Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Вызов с помощью eval команды, но при этом нужно вывести то что она печатает в свой stdout / 2 сообщений из 2, страница 1 из 1
02.02.2009, 21:47:51
    #35792536
black zorro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов с помощью eval команды, но при этом нужно вывести то что она печатает в свой stdout
For Linux и|или Solaris (sh):

Предположим, что есть следующий код

exec_command="ls" (на самом деле другая команда, но сути дела это не меняет)
eval $exec_command


exec_command="ls -a" (на самом деле другая команда, но сути дела это не меняет)
eval $exec_command

Команды отрабатывают на ура, но те сообщения которые они печатают на экран (в процессе своего выполнения) мне не видны.

Если использовать exec (которая выводит текст сообщений на экран),
то после завершения первой команды, завершается и весь скрипт, и вторая команда не выполнится.
...
Рейтинг: 0 / 0
02.02.2009, 22:16:19
    #35792576
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов с помощью eval команды, но при этом нужно вывести то что она печатает в свой stdout
Попробовал на альтлинуксе выполнить файл с этим кодом:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/sh

exec_command="ls"
eval $exec_command

exec_command="ls -a"
eval $exec_command

exit  0 
В консоли вижу всё как написано - список файлов дважды, второй раз с точками.
Возможно, в первом exec_command присутствует что то вроде "exit 0" - тогда, естественно, второй eval не сработает.
Полагаю, следует огласить подробности проблемного кода и ОС.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Вызов с помощью eval команды, но при этом нужно вывести то что она печатает в свой stdout / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]