Reseni v Bash
Bohdan Milar
milar na tyflocentrum-ol.cz
Středa Listopad 5 12:09:00 CET 2003
On Tue 4. November 2003 08:47, you wrote:
Dobrý den,
> Ani tak mi to nefunguje, odpovedi je No such file or directory. Mozna jsem
> spatne popsal ulohu. Je adresar DIR1 v nem podadresare NAZEV1,NAZEV2,NAZEV3
> v kazdem z nich je mimo jine textovy soubor s nazvem jako prislusny adresar
> zacinajici dvema podtrzitky tj. __NAZEV1.TXT, __NAZEV2.TXT, __NAZEV3.TXT....
> Chci aby se vybraly pouze textove soubory a nakopirovaly se do jineho
adresare
> (DIR2), ve kterem jsou pripraveny odpovidajici prazdne adresare (NAZEV1,
> NAZEV2, NAZEV3). Vysledkem by melo byt DIR2/NAZEV1/__NAZEV1.TXT atd.
To je situace opravdu trochu jiná, potom navrhuji následující:
i="1"
chyba=""
while [ -z $chyba ]; do
cp -v DIR1/NAZEV${i}/__NAZEV${i} DIR2/NAZEV${i}/__NAZEV${i} || chyba="1"
i=`expr $i + 1`
done
Skript předpokládá, že číselná řada NAZEV1, ... NAZEVn neni přerušená a
konstantně se zvyšuje o 1. O postupu bude vypisovat hlášky. Protože není
stanovena horní hranice, skončí skript v okamžiku, kdy narazí na neexistující
číslo. Vypíše proto chybu "není souborem ani adresářem".
S pozdravem
Bohdan Milar
Další informace o konferenci Linux