Skip to content

Instantly share code, notes, and snippets.

@xerrni
Last active March 26, 2017 20:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xerrni/3358bb6160a83820709912e880384017 to your computer and use it in GitHub Desktop.
Save xerrni/3358bb6160a83820709912e880384017 to your computer and use it in GitHub Desktop.
SOE LAB1 ZAD1
#!/bin/bash
help="Poprawne użycie:\narg1 - katalog, w ktorym skrypt bedzie zliczal pliki okreslonego typu.\narg2 - typ_pliku"
argumenty="zwykly - zwykle pliki\nFIFO - FIFO\nblok - pliki specjalne blokowe\nznak - pliki specjalne znakowe\nsocket - sockety\ndowiazanie - dowiazania symboliczne\nkatalog - katalogi"
if [ "$#" -ne 2 ]; then
echo "podaj 2 argumenty"
echo -e $help
echo -e $argumenty
exit 1
fi
if [ ! -d "$1" ]; then
echo "pierwszy argument powinien być ścieżką do katalogu"
echo -e $help
echo -e $argumenty
exit 2
fi
if [ ! -r "$3" ]; then
echo "Nie masz uprawnien do przegladania katalogu."
exit 3
fi
if [ ! -x "$3" ]; then
echo "Nie masz uprawnien do przegladania katalogu."
exit 3
fi
# if [ "$2" == "zwykly" ]; then
# echo "jest" `find .. -maxdepth 1 -type f | wc -l` " zwyklych plikow"
# fi
if [ "$2" == "zwykly" ]; then
echo "jest" `ls -la "$1" | grep ^- | wc -l` " zwyklych plikow"
elif [ "$2" == "FIFO" ]; then
echo "jest" `ls -la "$1" | grep ^p | wc -l` " FIFO"
elif [ "$2" == "blok" ]; then
echo "jest" `ls -la "$1" | grep ^b | wc -l` " plikow specjalnych blokowych"
elif [ "$2" == "znak" ]; then
echo "jest" `ls -la "$1" | grep ^c | wc -l` " plikow specjalnych znakowych"
elif [ "$2" == "socket" ]; then
echo "jest" `ls -la "$1" | grep ^s | wc -l` " socketow"
elif [ "$2" == "dowiazanie" ]; then
echo "jest" `ls -la "$1" | grep ^l | wc -l` " dowiazan symbolicznych"
elif [ "$2" == "katalog" ]; then
echo "jest" `ls -la "$1" | grep ^d | wc -l` " katalogow"
else
echo "Argument \"$2\" jest bledny"
echo -e $help
echo -e $argumenty
exit 4
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment