Created
February 28, 2012 13:50
-
-
Save paul-ihnatolia/1932674 to your computer and use it in GitHub Desktop.
Bash programming(V-7)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash #вказуємо шлях інтерпретатора | |
searchF(){ #функція для перевірки наявності всіх установлених програмок | |
echo -e "Searching for unrar, unzip and tar installed in your system" | |
if [ -x "/usr/bin/unrar" ] #перевірки чи установлений unrar | |
then | |
echo -e "\tUnrar detected!" | |
else | |
echo -e "\tUnrar wasn't detected :(" | |
fi | |
if [ -x "/usr/bin/unzip" ] #перевірка чи установ unzip | |
then | |
echo -e "\tUnzip detected!" | |
else | |
echo -e "\tUnzip was't detected :(" | |
fi | |
if [ -x "/bin/tar" ] #перевірка чи установлений tar | |
then | |
echo -e "\tTar detected!" | |
else | |
echo -e "\tTar wasn't detected :(" | |
fi | |
} | |
if [ $# -lt 1 ] #перевіряємо кількість переданих аргументів | |
then | |
echo "Wrong number of arguments!" | |
else | |
searchF #викликаємо вище створену функцію | |
for i in $@ # виконуємо цикл для кожного з переданих аргументів | |
do | |
isArchive=$(file $i | grep -i 'archive') #перевіряємо чи це архів | |
if [ -n "$isArchive" ] #якщо архів | |
then | |
echo -e "File $i is archive" #виводимо повідомлення | |
echo -e "\tDetecting a type of archive" | |
if [ -n "$(file $i | grep -i 'rar')" ] #тут і далі знаходимо тип архіву | |
then #і в залежності від типу будемо розархівовувати його відповідною | |
echo -e "\tType: rar!\n\tUnraring..." #програмою | |
$(unrar -inul e $i) | |
elif [ -n "$(file $i | grep -i 'zip')" ] | |
then | |
echo -e "\tType: zip\n\tUnziping..." | |
$(unzip -o $i) | |
elif [ -n "$(file $i | grep -i 'tar')" ] | |
then | |
echo -e "\tType tar\n\tUntaring" | |
$(tar -xvf $i) | |
else | |
echo "Unknown type of archive!" #виводимо повідомлення якщо тип архіву невідомий | |
fi | |
fi | |
done | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment