The OpenNET Project / Index page

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

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

"передать шелл-скрипту вывод команды" 
Сообщение от Grib Искать по авторуВ закладки(??) on 12-Июл-05, 12:05  (MSK)
Возник вот такой вопрос. Нужно передать скрипту вывод другой команды так чтобы скрипт расценил их как позиционные параметры. Хотелось бы сделать все одной строкой, но не работает:

#ls --time-style=long-iso -go --time=status file.txt | test.sh

test.sh печатает число позиц. параметров: echo $# На самом деле печатает 0.

Если перенаправить вывод 'ls' в файл, а потом сказать
#test.sh `cat output_file`

то все ОК.

Как-то можно это побороть?

Спасибо.

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

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "передать шелл-скрипту вывод команды" 
Сообщение от ihor Искать по авторуВ закладки on 12-Июл-05, 12:11  (MSK)
man xargs
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "передать шелл-скрипту вывод команды" 
Сообщение от allez Искать по авторуВ закладки(ok) on 12-Июл-05, 12:15  (MSK)
>Возник вот такой вопрос. Нужно передать скрипту вывод другой команды так чтобы
>скрипт расценил их как позиционные параметры. Хотелось бы сделать все одной
>строкой, но не работает:
>
>#ls --time-style=long-iso -go --time=status file.txt | test.sh
>
>test.sh печатает число позиц. параметров: echo $# На самом деле печатает 0.
>
>
>Если перенаправить вывод 'ls' в файл, а потом сказать
>#test.sh `cat output_file`
>
>то все ОК.
>
>Как-то можно это побороть?
>
>Спасибо.


Вы были на полпути к тому, чтобы дойти своим умом до решения.

# test.sh `ls --time-style=long-iso -go --time=status file.txt`

# ls --time-style=long-iso -go --time=status file.txt | xargs test.sh

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

3. "передать шелл-скрипту вывод команды" 
Сообщение от madskull Искать по авторуВ закладки(ok) on 12-Июл-05, 13:17  (MSK)
> echo $#
это содержимое скрипта?
то есть, надо просто узнать количество "столбцов"?

# ls --time-style=long-iso -go --time=status file.txt | wc -w

Если с этим безобразием надо потом что-то делать, то можно попробовать такой скриптец
a=(`cat`)
echo ${a[0]} # первое слово
echo ${#a[@]} # количество элементов массива


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


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

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




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

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