У меня есть простой bash скрипт, который запускает исполняемый файл в фоновом режиме и перенаправляет stdout + stderr в файл журнала:
#!/usr/bin/bash
myexec >& logfile &
Это работает. Однако вывод из myexec
- не единственное, что перенаправляется: любые сообщения, которые bash
испускает при попытке вызвать myexec
, также отправляются на logfile
. То есть, если bash
не находит myexec
, я не вижу ошибку myexec: No such file or directory
, потому что она идет прямо к logfile
вместо терминала. Это поведение меня раздражает, потому что я в конечном итоге не знаю, удалось ли сценарию запустить myexec
.
Мне приходит в голову, что сценарий может просто проверить наличие myexec
, прежде чем пытаться вызвать его, но мне интересно, не существует ли способа сделать само перенаправление таким образом, чтобы перенаправлялся только вывод myexec
, а не оболочки.