The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"помогите с хитрым конвеером"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"помогите с хитрым конвеером"  
Сообщение от evi9 email on 20-Фев-09, 11:52 
Есть конструкция:

(cat /tmp/foo ; echo "bar" ) | script.sh
в этом случае на stdin скрипта поступают вначале содержимое файла foo, а затем слово bar.

Как изменить данную конструкцию, чтобы вместо файла foo использовать вывод предыдущего в конвеере, чтобы было типа такого:

cat /tmp/foo| ( "?" ; echo "bar" ) | script.sh

Что вписать вместо вопроса?

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "помогите с хитрым конвеером"  
Сообщение от XoRe (ok) on 20-Фев-09, 12:15 
echo `/tmp/foo` "bar" | script.sh

Если нужно что-то специфичное, можно посмотреть man echo

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "помогите с хитрым конвеером"  
Сообщение от evi9 email on 20-Фев-09, 12:38 
>echo `/tmp/foo` "bar" | script.sh
>
>Если нужно что-то специфичное, можно посмотреть man echo

вы меня не поняли... echo тут не причем!!!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "помогите с хитрым конвеером"  
Сообщение от vic (??) on 20-Фев-09, 14:26 
>echo `/tmp/foo` "bar" | script.sh
>
>Если нужно что-то специфичное, можно посмотреть man echo

есть нюанс, echo имеет привычку заменять \n на пробел, так что на входе следующей утилиты в конвейере будет не совсем то :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "помогите с хитрым конвеером"  
Сообщение от phpcoder email(??) on 20-Фев-09, 12:43 
user-desktop% (echo 1; echo 2) | xargs
1 2
user-desktop% (echo 1 | tr 1 9; echo 2) | xargs
9 2

Я ответил на ваш вопрос?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "помогите с хитрым конвеером"  
Сообщение от vic (??) on 20-Фев-09, 14:22 
>Есть конструкция:
>(cat /tmp/foo ; echo "bar" ) | script.sh
>в этом случае на stdin скрипта поступают вначале содержимое файла foo, а
>затем слово bar.
>Как изменить данную конструкцию, чтобы вместо файла foo использовать вывод предыдущего в
>конвеере, чтобы было типа такого:
>cat /tmp/foo| ( "?" ; echo "bar" ) | script.sh
>Что вписать вместо вопроса?

cat /tmp/foo | ( cat ; echo "bar" ) | script.sh

ps:
если предыдущий в конвейере поддерживает поведение cat (последовательный вывод всех указанных файлов), то можно также пользоваться следующим приемом:
cat /tmp/foo <(echo "bar") | script.sh

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "помогите с хитрым конвеером"  
Сообщение от Andrey Mitrofanov on 20-Фев-09, 17:40 
>cat /tmp/foo | ( cat ; echo "bar" ) | script.sh

Ой, совсем слепой стал. То же самое написал.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "это вопрос с подвохом? викторина?"  
Сообщение от Andrey Mitrofanov on 20-Фев-09, 17:38 
>cat /tmp/foo| ( "?" ; echo "bar" ) | script.sh
>
>Что вписать вместо вопроса?

cat

cat /tmp/foo |( cat ; echo "bar" ) | script.sh

А призы и подарки -- будут? :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "это вопрос с подвохом? викторина?"  
Сообщение от evi9 on 22-Фев-09, 14:51 
>>cat /tmp/foo| ( "?" ; echo "bar" ) | script.sh
>>
>>Что вписать вместо вопроса?
>
>cat
>
>cat /tmp/foo |( cat ; echo "bar" ) | script.sh
>
>А призы и подарки -- будут? :)

Спасибо, cat /tmp/foo |( cat ; echo "bar" ) | script.sh - это оно!!!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру