if [ -e `ls *txt 2> /dev/null | head -n 1` ] - Kde je chyba?

Matus UHLAR - fantomas uhlar na fantomas.sk
Středa Říjen 26 09:34:28 CEST 2005


Marek Kubesa <marek.kubesa na seznam.cz> wrote:
> Poradíte mi, prosím, kde je v této podmínce chyba ?
> 
> #!/bin/sh
> 
> cd $dir
> if [ -e `ls *txt 2> /dev/null | head -n 1` ]
> then
>  echo ano
> else
>  echo ne
> fi

vyzera ze test vrati true aj ked mu nezadate ziaden subor ako argument.

> do určitého adresáře $dir jsou ukládány soubory .txt
> Skript periodiky adresář kontroluje a pokud se objeví soubory .txt tak 
> je zpracuje.
> Tato podmínka má ošetřit případ, kdy v adresáři žádné soubory .txt nejsou.

toto mozete urobit ovela jednoduchsie:

for subor in *.txt
do
   <spracuj> $subor
done

-- 
Matus UHLAR - fantomas, uhlar na fantomas.sk ; http://www.fantomas.sk/
Warning: I wish NOT to receive e-mail advertising to this address.
Varovanie: na tuto adresu chcem NEDOSTAVAT akukolvek reklamnu postu.
A day without sunshine is like, night.


Další informace o konferenci Linux