Как вернуть результат работы(то что в stdout) в переменную?
Хочу перейти в папку, xargs чего то не дружит с cd...
Вот например:
dirname $i | xargs cd не пашет, хотя dirname $i | xargs ls работает прекрасно.
Если пытаюсь сохранить так
result=dirname $i
echo $result
То там оказывается какой то бред.
Bash programming, переменная
Модераторы: /dev/random, Модераторы разделов
Re: Bash programming, переменная
Garret писал(а): ↑11.07.2007 13:23Как вернуть результат работы(то что в stdout) в переменную?
Хочу перейти в папку, xargs чего то не дружит с cd...
Вот например:
dirname $i | xargs cd не пашет, хотя dirname $i | xargs ls работает прекрасно.
Если пытаюсь сохранить так
result=dirname $i
echo $result
То там оказывается какой то бред.
result=`dirname $i`
echo $result
Re: Bash programming, переменная
Ну и, соответственно, вместо
так:
Код: Выделить всё
cd `dirname $i`
И кстати, причина этого в том, что cd -- встроенная команда bash, а ls -- внешняя:
Код: Выделить всё
t:~$ which cd
t:~$ which ls
/bin/ls
t:~$ echo tmp|xargs cd
xargs: cd: Нет такого файла или каталога
t:~$ echo tmp|xargs ls
foto.tif
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж