|
|
ru.unix- RU.UNIX ---------------------------------------------------------------------- From : Eugene Grosbein 2:5006/1 04 Jun 2002 22:35:50 To : Vasily Korytov Subject : Re: shell question -------------------------------------------------------------------------------- VK> Видимо, потому же, почему не срабатывает в sh вот и это: Угу. VK> unix$ tmp=1 VK> unix$ echo 2|read tmp VK> unix$ echo $tmp VK> 1 VK> Зато в zsh это же работает. По-моему, мы имеем дело с тем фактом, что VK> в подавляющем большинстве клонов sh большинство комманд шелла не могут VK> иметь дело с пайпами. Могут. Hо /bin/sh выполняет pipe в subshell (о чем я забыл), поэтому прочтенное значение тут же теряется. VK> Workaround -- темповик и stdin. e.g.: VK> unix$ tmp=1 VK> unix$ echo 2 >/tmp/aa VK> unix$ read tmp </tmp/aa VK> unix$ echo $tmp Похоже, это единственный вариант передачи данных из subshell наверх. Кроме exit status, конечно. Eugene --- slrn/0.9.7.3 (FreeBSD) * Origin: Svyaz Service JSC (2:5006/1@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix/88697fcbb353.html, оценка из 5, голосов 10
|