Hi, All!Посоветуйте как лучше сделать сабж.
Спасибо.
>Hi, All!
>
>Посоветуйте как лучше сделать сабж.
>Спасибо.var="`<command> 2>&1`"
#!/bin/csh
#
set VV = `/bin/ls *.pl`
echo $VV
>#!/bin/csh
>#
>set VV = `/bin/ls *.pl`
>echo $VVтук у тебя в переменную попадет только стандартный вывод, поток ошибок туда не попадет. (добавь к примеру echo "--" перед echo $VV и увидишь это).
надо объединять потоки. csh не пользовался, как объединить потоки не знаю...
как сделать в баше написал выше
>тук у тебя в переменную попадет только стандартный вывод, поток ошибок туда
>не попадет. (добавь к примеру echo "--" перед echo $VV иЭто верно - поторопился...
Огромное всем спасибо!
конструкция var="`<command> 2>&1`" работает если нет интерактивности
В моем случае <command> интерактивна - "dialog"
Пример:
var=`dialog --inputbox "test" 10 10 2>&1`
echo $var
ЗЫ
Раньше перенаправлял stderr/stdout в переменную припомощи
set var=...
Не могу вспомнить как :(
Напомните ПОЖАЛУЙСТА!
очень нужно.
>Огромное всем спасибо!
>конструкция var="`<command> 2>&1`" работает если нет интерактивности
>В моем случае <command> интерактивна - "dialog"
>Пример:
>var=`dialog --inputbox "test" 10 10 2>&1`
>echo $var
>
>
>ЗЫ
>Раньше перенаправлял stderr/stdout в переменную припомощи
>set var=...
>Не могу вспомнить как :(
>Напомните ПОЖАЛУЙСТА!
>очень нужно.exec 3>&1; res="`dialog --inputbox "test" 10 30 2>&1 1>&3`"; exec 3>&-;
echo $res
>>Огромное всем спасибо!
>>конструкция var="`<command> 2>&1`" работает если нет интерактивности
>>В моем случае <command> интерактивна - "dialog"
>>Пример:
>>var=`dialog --inputbox "test" 10 10 2>&1`
>>echo $var
>>
>>
>>ЗЫ
>>Раньше перенаправлял stderr/stdout в переменную припомощи
>>set var=...
>>Не могу вспомнить как :(
>>Напомните ПОЖАЛУЙСТА!
>>очень нужно.
>
>exec 3>&1; res="`dialog --inputbox "test" 10 30 2>&1 1>&3`"; exec 3>&-;
>echo $resили проще:
res="`dialog --stdout --inputbox "test" 10 30`"; echo $res
>>>Огромное всем спасибо!
>>>конструкция var="`<command> 2>&1`" работает если нет интерактивности
>>>В моем случае <command> интерактивна - "dialog"
>>>Пример:
>>>var=`dialog --inputbox "test" 10 10 2>&1`
>>>echo $var
>>>
>>>
>>>ЗЫ
>>>Раньше перенаправлял stderr/stdout в переменную припомощи
>>>set var=...
>>>Не могу вспомнить как :(
>>>Напомните ПОЖАЛУЙСТА!
>>>очень нужно.
>>
>>exec 3>&1; res="`dialog --inputbox "test" 10 30 2>&1 1>&3`"; exec 3>&-;
>>echo $res
>
>или проще:
>res="`dialog --stdout --inputbox "test" 10 30`"; echo $res
Jake, спасибо!В моем "dialog" --stdout - отсутствует :(, вывод идет в stderr.
Но "cdialog" --stdout - есть и все заработало :)