bash: Predani parametru ze souboru

Karel Salavec karels na pc163.gr.ph.ct.cz
Úterý Březen 29 21:48:11 CEST 2005


Zdravim!

Narazil jsem na jednu podivnost, kterou ne zcela chapu (takze se ptam 
zkusenejsich :-P ):

Mejme skript se jmenem skript.sh a obsahem
#!/bin/bash
echo $1
echo $2
echo $3

Parametry pro tento skript se budou brat ze souboru soubor (mam sve duvody, 
proc jsem zvolil tohle reseni, ale ...). Parametry mohou obsahovat mezeru. 
Takze soubor soubor bude mit napr. obsah
prvni\ cast druha_cast treti

Zkusime spustit skript z promptu a zadat parametry "z ruky"
> ./skript.sh prvni\ cast druha_cast treti
a, podle ocekavani, se vypise
prvni\ cast
druha_cast 
treti

Dalsi krok - budeme brat parametry ze souboru
> ./skript.sh < soubor
Nevypise se nic

Jinak:
> ./skript.sh `cat soubor`
Vypise se:
prvni\ 
cast 
druha_cast

Nakonec jsem nasel cestu, jak to obejit, ale zajimalo by mne, proc dochazi k 
takovemuto chovani.
Diky za vysvetleni

Karel



Další informace o konferenci Linux