[Bash] Sprawdzanie czy plik istnieje

Mat.Monia
Użytkownik
Użytkownik
Posty: 105
Rejestracja: 2 paź 2008, o 19:56
Płeć: Kobieta
Lokalizacja: Bydgoszcz
Podziękował: 7 razy
Pomógł: 2 razy

[Bash] Sprawdzanie czy plik istnieje

Post autor: Mat.Monia »

Witajcie!
Mam pliki: lili.txt, lina.txt, lik.txt, lirb,txt, lics.txt, nana.txt,nak.txt, itd. Chcialabym napisac skrypt, ktory bedzie sprawdzal, czy dany plik istnieje. Jesli tak, to wykonuje instrukcje, jesli nie wyswietla napis plik nie istnieje.

Sprobowalam zrobic cos takiego:

Kod: Zaznacz cały

for x in  li na
 do
 for y in li na k rb cs

 if [ -e ~/Desktop/skrypt/."${x}${y}".txt ] ; then
 [instrukcja]

   else echo "brak pliku"      

         fi
Jednakze wyswietla mi syntax error i nie podstawia za ${x} i ${y}.

Bede bardzo wdzieczna za wskazowke, jak to poprawić.
Ostatnio zmieniony 10 wrz 2012, o 09:46 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
royas
Użytkownik
Użytkownik
Posty: 363
Rejestracja: 24 sie 2012, o 09:27
Płeć: Mężczyzna
Lokalizacja: Cieszyn
Pomógł: 80 razy

[Bash]sprawdzanie czy plik istnieje

Post autor: royas »

Nie masz "do" po drugim "for".
Mat.Monia
Użytkownik
Użytkownik
Posty: 105
Rejestracja: 2 paź 2008, o 19:56
Płeć: Kobieta
Lokalizacja: Bydgoszcz
Podziękował: 7 razy
Pomógł: 2 razy

[Bash] Sprawdzanie czy plik istnieje

Post autor: Mat.Monia »

Tak, przypadkowo podczas kopiowania usunelam. Jednakze problem jest nadal aktualny.

Kod: Zaznacz cały

for x in  li na
 do
 for y in li na k rb cs
    do
 if [ -e ~/Desktop/skrypt/."${x}${y}".txt ] ; then
 [instrukcja]

   else echo "brak pliku"     

         fi
royas
Użytkownik
Użytkownik
Posty: 363
Rejestracja: 24 sie 2012, o 09:27
Płeć: Mężczyzna
Lokalizacja: Cieszyn
Pomógł: 80 razy

[Bash] Sprawdzanie czy plik istnieje

Post autor: royas »

Kod: Zaznacz cały

done
done
na końcu może?
Powinno Ci wyświetlać jakiego typu "syntax error" i w której linii.
Mat.Monia
Użytkownik
Użytkownik
Posty: 105
Rejestracja: 2 paź 2008, o 19:56
Płeć: Kobieta
Lokalizacja: Bydgoszcz
Podziękował: 7 razy
Pomógł: 2 razy

[Bash] Sprawdzanie czy plik istnieje

Post autor: Mat.Monia »

mam zakoczona petle

Kod: Zaznacz cały

   done
  done
To nie wynika z tego.
Problem lezy w linijce:

Kod: Zaznacz cały

if [ -e ~/Desktop/skrypt/."${x}${y}".txt ] ; then
royas
Użytkownik
Użytkownik
Posty: 363
Rejestracja: 24 sie 2012, o 09:27
Płeć: Mężczyzna
Lokalizacja: Cieszyn
Pomógł: 80 razy

[Bash] Sprawdzanie czy plik istnieje

Post autor: royas »

U mnie to działa. Spróbuj może bez "". Acha i prawdopodobnie nie chcesz tej pierwszej kropki w tej linii.
A jesteś pewna że błąd nie jest w [instrukcja]?
ODPOWIEDZ