|
nie wiem co znaczą te linie kodu
drdala - 07-06-2010 20:44
Bardzo proszę o pomoc nie wiem co znaczą te linie kodu
#!/bin/bash
sel1="sel1" sel2="sel2" sel3="sel3" rob1=0 main(){ if [ "$1" = "pliki" ]; then typ="f" elif [ "$1" = "katalogi" ]; then typ="d"; rob1=1 elif [ "$1" = "linki" ]; then typ="l" else echo "blad1"; exit fi
for element in `find $2 -type $typ` do echo -e "Znaleziono element: $element.\nCo zrobic ?" #NIE WIEM CO ZNACZY TA LINIJKA a dokladniej -e select x in "$sel1" "$sel2" "$sel3" do case $x in "$sel1") echo "gdzie ?"; read docelowy; if [ -d #NIE WIEM CO ZNACZY TA LINIJKA a dokladniej -d $docelowy ] ; then
mv $element $docelowy else
echo "blad3" fi ;; "$sel2") if [ `grep "usun mnie" $element` ]; then rm $element fi ;; "$sel3") echo "cos" ;; *) echo "blad2";; esac break done done }
if [ $# ... ] #NIE WIEM CO ZNACZY TA LINIJKA ale ona jest nie dokonczona i nie wiem jak ja dokonczyc main $1 $2 fi
#PROGRAM2 #!/bin/bash #definicja komunikatow bledow blad1="1" blad2="2" blad3="3" blad4="4" blad5="5" blad6="6" info1="szukamy plikow wlasciciela" info2="szukami plikow z prawami" info3="szukamy plikow z rozszerzeniem mp3, avi, mov, itp." kom1="wybierz 1-644, 2-755, 3-wczytaj z klawiatury" kom2="1-info, 2-rozmiar"
main() { select x in "$info1" "$info2" "$info3" do case $x in $info1) `find $1 -user mc -type f > plik1` ;; #NIE WIEM CO ZNACZY TA LINIJKA $info2) echo $kom1; read war case $war in 1) `find $1 -perm 644 >plik2` ;; #NIE WIEM CO ZNACZY TA LINIJKA 2) `find $1 -perm 755 >plik2` ;; #NIE WIEM CO ZNACZY TA LINIJKA 3) read prawa; `find $1 -perm $prawa >plik2` ;; #NIE WIEM CO ZNACZY TA LINIJKA *) echo $blad5;; esac;; $info3) for y in `find $1 -type f -name *.avi` `find $1 -type f -name *.mp3` #NIE WIEM CO ZNACZY TA LINIJKA do echo "$kom2" read wybor case $wybor in 1) stat -c %n $y ;; #NIE WIEM CO ZNACZY TA LINIJKA 2) stat -c %s $y ;; #NIE WIEM CO ZNACZY TA LINIJKA *) echo $blad6;; esac done;; *)echo $blad4 ;; esac? break; done }
if [ $# -eq 1 ] ;then #NIE WIEM CO ZNACZY TA LINIJKA if [ -d $1 ]; then #NIE WIEM CO ZNACZY TA LINIJKA main $1 else echo $blad3 fi elif [ $# -lt 1 ]; then #NIE WIEM CO ZNACZY TA LINIJKA echo "$blad1" else echo "$blad2" fi
#PROGRAM 3 #!/bin/bash
plik() {
if [ -f $1 ] #NIE WIEM CO ZNACZY TA LINIJKA then
echo -e "Wybierz operację do wykonania: \n1. wyświetlanie informacji o pliku, \n2. wyświetlanie zawartości na tty3, \n3. sprawdzanie rozmiaru, \n4. zmiana uprawnień chmod-em." read wyb case $wyb in 1 ) echo "Nazwa pliku:" stat -c %n $1 #NIE WIEM CO ZNACZY TA LINIJKA echo "Uprawnienia:" stat -c %A $1 #NIE WIEM CO ZNACZY TA LINIJKA echo "Lokalizacja:" pwd $1 #NIE WIEM CO ZNACZY TA LINIJKA ;; 2 ) cat $1 > /dev/tty3 ;; 3 ) stat -c %s $1 ; echo "bajtów";; #NIE WIEM CO ZNACZY TA LINIJKA 4 ) echo -e "Jakie uprawnienia chcesz dodać? \n1. odczytu, \n2. zapisu, \n3. wykonywania, \n4. inne (wpisz samodzielnie, np. u+w, g-x)." read upr case $upr in 1 ) chmod u+r $1 ;; 2 ) chmod u+w $1 ;; 3 ) chmod u+x $1 ;; 4 ) read upr_wl ; chmod $upr_wl $1 ;; * ) echo "Zly klawisz" ;; esac esac else echo "nie ma" fi }
#*****
kat() { if [ -d $1 ] #NIE WIEM CO ZNACZY TA LINIJKA a dokladnej -d then #gdy katalog istnieje echo -e "Wybierz operację do wykonania: \n1. wyświetlanie informacji o katalogu,\n2. wyświetlanie zawartości na tty3,\n3. sprawdzanie rozmiaru \n4. zmiana uprawnień chmod-em." ?read wyb; case $wyb in 1 ) echo "Nazwa katalogu:" stat -c %n $1 #NIE WIEM CO ZNACZY TA LINIJKA echo "Uprawnienia:" stat -c %a $1 #NIE WIEM CO ZNACZY TA LINIJKA echo "Lokalizacja:" pwd $1 ;; 2 ) ls $1 > /dev/tty3 ;; #NIE WIEM CO ZNACZY TA LINIJKA 3 ) du -s -h $1 ;; #NIE WIEM CO ZNACZY TA LINIJKA 4 ) echo -e "Jakie uprawnienia chcesz dodać? \n1. odczytu, \n2. zapisu, \n3. wykonywania, \n4. inne (wpisz samodzielnie, np. u+w, g-x)." read upr case $upr in 1 ) chmod u+r $1 ;; 2 ) chmod u+w $1 ;; 3 ) chmod u+x $1 ;; 4 ) read upr_wl ; chmod $upr_wl $1 ;; * ) echo "Zly klawisz" ;; esac esac
else echo "Katalog nie istnieje"; fi
}
#*****
main() { if [ $# -eq 2 ] #NIE WIEM CO ZNACZY TA LINIJKA then if [ "$1" == "-f" ] #NIE WIEM CO ZNACZY TA LINIJKA then plik $2 elif [ "$1" == "-d" ] #NIE WIEM CO ZNACZY TA LINIJKA then kat $2? else echo "Bląd skladni!" fi elif [ $# -gt 2 ] #NIE WIEM CO ZNACZY TA LINIJKA then echo "Za duzo parametrow" elif [ 2 -gt $# ] #NIE WIEM CO ZNACZY TA LINIJKA then echo "Za malo parametrow" fi }
main $1 $2
####
skąd mogę się dowiedzieć co to znaczy np. : -z $# -ne ?f1 ?d != ?f7 -la -e -m ! stat -c %n f -eq %n %A du -s -h -gt
jeśli możecie to powiedzcie co to znaczy i gdzie sam mogę się tego dowiedzieć w internecie? Z góry dziękuję za odpowiedzi i pozdrawiam.
AdeBe - 07-06-2010 21:06
Primo: http://rtfm.killfile.pl/#praca_domowa Secundo: hasła w google w stylu "bash składnia", "bash dla opornych", "man stat" itd.
drdala - 08-06-2010 10:56
echo -e "Znaleziono element: $element.\nCo zrobic ?" if [ -d $docelowy ] `find $1 -user mc -type f > plik1` `find $1 -perm 644 >plik2` `find $1 -perm 755 >plik2` read prawa; `find $1 -perm $prawa >plik2` for y in `find $1 -type f -name *.avi` `find $1 -type f -name *.mp3` stat -c %n $y stat -c %s $y if [ $# -eq 1 ] if [ -d $1 ] main $1 if[ $# -lt 1 ] if [ -f $1 ] stat -c %n $1 stat -c %A $1 pwd $1 stat -c %s $1 if [ -d $1 ] stat -c %n $1 stat -c %a $1 ls $1 > /dev/tty3 du -s -h $1 if [ $# -eq 2 ] if [ "$1" == "-f" ] if [ "$1" == "-d" ] if [ $# -gt 2 ] if [ 2 -gt $# ]
Nie wiem co to znaczy? Stąd to wziąłem: http://www.speedyshare.com/files/228...amy_dobrze.txt i skąd ja mogę się dowiedzieć co znaczą takie rzeczy jak:
-c -e %n %a - type -perm itd.
Nie chce was męczyć tylko sam się tego nauczyć.
Redhead - 08-06-2010 11:11
http://debian.linux.pl/threads/19029...238#post120238 Polecam manuale. Wpisz w google "site:unixhelp.ed.ac.uk echo" jesli nie ma linuksa w domu, a chcesz dowiedzieć sie o komendzie echo. Jak masz linuksa to wpisz w w terminalu man KOMENDA
Aha i daruj sobie juz tworzenie tematow z pytaniem do ludzi o swoje zadania. Juz 5 linijek skryptu, to nie problem przeanalizować.
fnmirk - 08-06-2010 11:19
drdala, kontynuuj zadawanie tego typu pytań w jednym temacie.
W ramach relaksu przeczytaj i zacznij stosować w praktyce: http://rtfm.killfile.pl/
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|