Zdravim.
Chcel som sa obratit na radu ohladne jednoho prikladu z Linux/Unix
Zobrazte do standardneho vystupu zoznam vsetkych suborov v adresari spolu
s pristupovymi pravami. Adresar, ktory sa ma zobrazit je uvedeni
ako nepoviny parameter skriptu. Zoznam suborov zoradte zostupne,
ak je zadany prepinac "-d". Ak je zadany prepinac "-a", tak
zoznam suborov je zadany vzostupne. Informacie, ktore neboli
zadane pomocou parameterov budu po spusteni skriptu vyziadane od pouzivatela.
zatial som sa dopracoval k tomuto
ls -R -l | tr -s " " | awk -F " " '{if ($3 =="meno") print "<" $ 3 "> <" $4 "> <" $9 ">";}'
viete mi niekdo poradit ako pri zadanych prepinacoch zoradit ten zoznam ?
Unix/linux bash prikaz na zoradenie
-
Soviet
Darca
- Príspevky: 9631
- Registrovaný: 20 okt 2006, 19:38
- Bydlisko: Moskwa
- Kontaktovať používateľa:
Re: Unix/linux bash prikaz na zoradenie
Z toho zadania mi nieje jasne co vlastne chces.
Co ma hodit output a podla coho ma byt zobrazeny. Podla mena zostupne/vzostupne, alebo podla velkosti?
Ja som skusil zrobit nieco for fun v korne, neviem ci ti z toho nieco pomoze, pre pripad, ked clovek zabudne vlozit nieco za script a teda sa ho to ma dozadovat. Nemam bohuzial casu sa nato mrknut blizsie, teda co sa tyka aj argumentov.
Co ma hodit output a podla coho ma byt zobrazeny. Podla mena zostupne/vzostupne, alebo podla velkosti?
Ja som skusil zrobit nieco for fun v korne, neviem ci ti z toho nieco pomoze, pre pripad, ked clovek zabudne vlozit nieco za script a teda sa ho to ma dozadovat. Nemam bohuzial casu sa nato mrknut blizsie, teda co sa tyka aj argumentov.
Kód: Vybrať všetko
#!/usr/bin/ksh
echo "Enter parameter for listing files/dirs (a/A d/D):
a/A - alpha sorted
d/D - reversed order
"
read parameter
echo "Your input is:" $parameter
sleep 2;
if [[ "$parameter" == [aA] ]];then
echo "You are listing current directory `pwd`";
ls -la |tail +4| awk '{print $1 "\t" $9}'
elif [[ "$parameter" == [dD] ]]; then
echo "You are listing current directory `pwd`";
ls -l1ra |tail +2| awk '{print $1 "\t" $9}'
else echo "You need to enter only a/A or d/D"
fi