nixp.ru v3.0

16 ноября 2024,
суббота,
07:31:10 MSK

Аватар пользователя Feuerbach
Feuerbach написал 31 марта 2006 года в 20:29 (779 просмотров) Ведет себя как мужчина; открыл 53 темы в форуме, оставил 447 комментариев на сайте.

Есть переменная $x, содержащая слова, разделенные пробелом. Надо бы запустить команду cmd так, чтобы слова $x были ее параметрами.

Просто

cmd $x


делает $x одним большим параметром, экранируя пробелы. Пока что додумался до

echo $x | xargs cmd


Нет ли более естественного способа сделать это?

Пишу под zsh, если это имеет значение.

Genie

как раз zsh это и делает проблемой..

потому как в bash отрабатывается «на ура» вот такое:

$ x="echo this is a test"; $x
this is a test
$
Feuerbach

Точно.

А пока я курю man zsh, объясни плз — как тогда в bash реализуется поведение zsh (т.е. когда надо передать $x как один параметр)?

Feuerbach

В zsh все решилось заменой $x на ${=x}. Про bash все еще интересно :)

Genie
Про bash все еще интересно :)

банально: «$x»

Последние комментарии

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.