$ bash -c 'date; source /dev/stdin' — выполняется команда date, а
дальше source пытается выполнить STDIN в
скриптовом режиме, а не в диалоговом.

Чем здесь могут быть полезны xargs и read, я придумать не смог.
Расскажите поподробнее, пожалуйста.

16 октября 2010 г. 15:44 пользователь Н. Артём <[email protected]> написал:
>> Подскажите, пожалуйста, как можно заставить bash считать первую
>> команду из параметров ключа запуска -c а последующие из stdin? Иначе:
>> как заставить bash -с [command] не завершаться после выполнения, а
>> ждать ввода?
>> Для sh -> /bin/dash это достигается комбинированием ключей -c и -s.
>> Для наглядности в отдельном эмуляторе терминала:
>> $ xterm -e sh -cs "ls"
>> У bash ключ -s тоже есть, но в сочетании с -c он не работает.
> А использовать xargs и read где-то после -c - не катит?
>
>
> --
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact [email protected]
> Archive: http://lists.debian.org/[email protected]
>
>

16 октября 2010 г. 18:34 пользователь Eugene Berdnikov <[email protected]> написал:
> On Fri, Oct 15, 2010 at 01:46:20PM +0400, ??micier wrote:
>> Подскажите, пожалуйста, как можно заставить bash считать первую
>> команду из параметров ключа запуска -c а последующие из stdin? Иначе:
>> как заставить bash -с [command] не завершаться после выполнения, а
>> ждать ввода?
>
> % echo "echo aaa\necho bbb" | bash -c 'date ; source /dev/stdin'
> Сбт Окт 16 18:30:05 MSD 2010
> aaa
> bbb
>
>  В принципе это башизм, хотя в zsh он тоже работает... Если нет
>  требования исполнять подаваемые на stdin команды в том же шелле,
>  то -c 'command ; $SHELL' достаточно портабильно.
> --
>  Eugene Berdnikov
>
>
> --
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact [email protected]
> Archive: http://lists.debian.org/[email protected]
>
>

Ответить