Скрипт в bash'е
попробуй ставить \ перед каждым таким символом
>перенаправляющая её вывод в /dev/null
go_to_bg my_prog 2>&1 > /dev/null наверно поможет
2) глотает, но вывод идёт
Наблюдение. Если запускать вышеприведённую команду не из скрипта, а из оболочки, то вывод такой:
[krokus ~]$ sudo nice -n-4 wxvlc -I rc --color v4l://v4l-adev="/dev/dsp" --sout '#transcode{acodec=mp3,ab=256}:std{access=http,mux=wav,url=:8080}' -vvv &
[1] 10514
[krokus ~]$ VLC media player 0.8.2 Janus
......................................
[всё работает, вывод идёт, приглашения оболочки нет, нажимаю Enter]
[1]+ Stopped sudo nice -n-4 wxvlc -I rc --color v4l://v4l-adev="/dev/dsp" --sout '#transcode{acodec=mp3,ab=256}:std{access=http,mux=wav,url=:8080}' -vvv
[krokus ~]$
Работать перестаёт, убивается только kill -9.
go_to_bg my_prog > /dev/null 2>&1
Только объясни, плз, что значат "2" и &1
Один вопрос снят:)
Остался самый главный
Только под go_to_bg я понимал ту чудную прогу, которая скрывает задачу
то, что stderr пойдёт вслед за stdout в /dev/null
беспесды
читай:
man nohup
хотя это может не совсем то
Да, может, это как-то удастся прикрутить
Оставить комментарий
Dilagio
1) Как сделать так, чтобы кавычки (и одинарные, и двойные - все) и прочие спецсимволы в строке, которую я отдаю bash'у, читались нормально? Проблема в том, что, если команда даётся без & в конце (хочу, чтобы задача работала в фоне всё работает, но следующая команда, естественно, не выполняется, а если оканчивать строчку &, то строка читается дико криво, и ничего не работает.Пример строки:
#!/bin/bash
sudo nice -n-4 wxvlc -I rc --color v4l://v4l-adev="/dev/dsp" --sout '#transcode{acodec=mp3,ab=256}:std{access=http,mux=wav,url=:8080}' -vvv
2) Есть ли команда, принудительно отправляющая задачу в фон и перенаправляющая её вывод в /dev/null? Так, например:
go_to_bg my_prog