bash for ciklus furcsaság

sziasztok,

van 1 egyszerű for ciklusom bash shell-ben, ahol megjelenik egy plusz sor amit nem értek. próbálok egy rakás rpm csomagot installálni és ezt automatizálni szeretném.


[myhost:~]$ ls -1 ./tmp/*.rpm
./tmp/a.rpm
./tmp/b.rpm
./tmp/c.rpm
[myhost:~]$ for i in $(ls -1 ./tmp/*.rpm) ; do echo rpm -ivh $i; done
rpm -ivh ./tmp/a.rpm
rpm -ivh ./tmp/b.rpm
rpm -ivh ./tmp/c.rpm
rpm -ivh

A ./tmp könyvtárban szépen ott vannak az rpm csomagok. Lefut mindegyikre az "rpm -ivh parancs", azonban a ciklus utolsó sora egy paraméter nélküli sort tartalmaz. valaki tudja, hogy miért van? egyébként RHEL5.3 (Tikanga)-t használok.

előre is köszi a segítségeket, kommenteket.

Hozzászólások

ls -1 vegen van egy ures \n sor. Azt kapja meg a ciklus.

Ahogy felettem irtak: for i in ./tmp/*.rpm; do echo rpm -ivh $i; done

Felesleges lsezni, amikor ezt a shell is tudja.

--
|8]

vagy csak egyszeruen:

rpm -ivh /tmp/*.rpm

---
Lehet, hogy kívül szőke vagyok, de belül sötét, oké?!

ah..OK, működik így. a PATH meg kell, hogy maradjon mert az rpm csomagok egy másik könyvtárban vannak és egy butaság miatt a ./tmp-ben kell lenni és onnan futtatni a parancsot. az rpm-ek eredetileg a "/home/rpms" könyvtárban vannak egyébként. most kivettem az ls-t és megy.

köszönöm szépen a segítséget!

--
qmi - Linux/FreeBSD SysAdm