linux (bash) экран с фоновым процессом - PullRequest
0 голосов
/ 05 марта 2020

С чистым рабочим каталогом, если я запускаю отдельный экран следующим образом

screen -dm bash -c "echo a>A; echo b>B;"

, тогда мой файл A создается и содержит содержимое. (Как и мой файл B).

При том же чистом рабочем каталоге, если первая команда имеет фон

screen -dm bash -c "echo a>A&; echo b>B;" # note the & after a>A

, тогда ни у одного файла нет содержимого. Почему это так?

Я хочу заменить "echo a> A" на какой-нибудь длительный процесс и сохранить его PID со вторым эхом. Это терпит неудачу.

1 Ответ

0 голосов
/ 05 марта 2020

Запишите это так:

echo a>A&echo b>B

Или, для лучшей читабельности,

echo a>A & echo b>B

Когда & проанализирован, ваша первая команда уже завершена, поэтому добавьте ; приведет к синтаксической ошибке. echo a>A&; echo b>B равно

#Buggy program
echo a>A &
;
echo b>B

и вызовет ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...