[+] bash problem z sprawdzaniem warunku ...

Potrzebujesz pomocy z C, C++, perl, python, itp.
dyschemist
Posty: 7
Rejestracja: 27 kwietnia 2008, 20:24
Lokalizacja: Łódź

[+] bash problem z sprawdzaniem warunku ...

Post autor: dyschemist »

mam do napisania prosty skrypt, jednak utknąłem w pewnym miejscu.

Po pierwsze musze podzielić w danym katalogu na podkatalogi i pliki ... potem mam z nich wziąść rozmiary ale to moze kidy indziej ... utknąłem w takim kawałku kodu
for plik in `ls $1`
do
echo "raz " $plik
#echo `test -d $plik`
if test -d $plik
then
echo "dwa"
echo -e "$plik"
fi
done
$1 to katalog na wejsciu

jako wynik otrzymuje wypisane wszystkie raz + nazwa pliku/podkatalogu, ale sam warunek nie zostaje spełniony nigdzie i nigdzie nie ma powiedziane "dwa" ...

co jest nie tak??
salmon
Beginner
Posty: 296
Rejestracja: 12 października 2007, 23:28
Lokalizacja: Gliwice/Bielsko-Biała

Post autor: salmon »

Bo plik nie istnieje w katalogu, w którym wykonywany jest program.

Kod: Zaznacz cały

if test -d $plik 
zamień na:

Kod: Zaznacz cały

if test -d "$1/"$plik


[ Dodano: 2008-04-27, 20:51 ]
Co do Twojego głównego zadania, to może poczytaj o programie find (dużo tego jest)
dyschemist
Posty: 7
Rejestracja: 27 kwietnia 2008, 20:24
Lokalizacja: Łódź

Post autor: dyschemist »

Dziękuje za pomoc. Pomogło jeszcze muszę dokładnie zrozumieć konstrukcję tego ale już mi się podoba : )
Co do find, to dobry pomysł ale dopiero w dalszej części mi się przyda. Chciałem robić ręcznie rekurencje. Faktycznie wystarczy mi find -f : )

Jeszcze raz dzięki za pomoc.
ODPOWIEDZ