|
|
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
Привет, не могу выполнить строчку как команду - bash не понимает пробелов и новых линий. Нужно вот для чего - есть внешний скрипт, который не может никак менять переменные среды6 поэтому я сделал для него обертку на bash она запускает скрипт,получает текст который нужно выполнить и выполняет его, вот с этим проблема - текс не выполняется Вот что возвращает скрипт: Код: plaintext 1. 2. Итак, я его в bash выполяю и сохраняю эту строчку в переменной OUT, но как ее выполнить? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Как это можно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 00:39 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
Почему бы не спихнуть эту строчку в файл и не выполнить его? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 07:39 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
это часть распространяемой библиотеки, он может быть на любом компютере, и обычно на нее есть доступ только у рута, можно в tmp создать, но я подумал может есть способ сделать это без создания файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 09:07 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Пример содержимого переменной $OUT можете привести? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 09:52 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
Да, вы правы, я наверно не точно описал что нужно. Переменные меняются внутри скрипта, но мне нужно чтобы они также изменились и в баш-консоли в которой вызван этот скрипт. Ддаже не подумал проверить их внитури самого скрипта, сейчас проверил - да, как вы и написали - после 'eval' внутри скрипта переменные меняются, но в самой консоли по прежнему отсутствуют. Их можно как-то установить и в самой консоли? Попробовал вот так, но не получается Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. сам скрипт вызываю таким образом Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 19:25 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
В переменной $OUT вот что содержится Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2011, 19:27 |
|
||
|
bash выполнить строку как команду (с пробелами и новыми линиями)
|
|||
|---|---|---|---|
|
#18+
Нет, так как вы хотите сделать - не получится, переменную родительского процесса нельзя установить\изменить из дочернего(коим является ваш скрипт) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.08.2011, 05:28 |
|
||
|
|

start [/forum/topic.php?fid=25&msg=37384661&tid=1484086]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
157ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 442ms |

| 0 / 0 |
