У меня есть сценарий, который запускает pianobar (плеер бандуры) и автоматически загружается в tty2 после начальной загрузки. Я запускаю Ubuntu Точные 12.04.
это - довольно простой сценарий:
#!bin/bash
sleep 5
echo "2" | pianobar
Это работает, это выбирает станцию 2 и начинает играть..., но когда я пытаюсь ввести в командах, это не работает (как продвижение "p" для паузы.) Это покажет букву в течение секунды, затем скроет его. Если я пытаюсь выйти с ctrl+z, он просто находится там, и я не могу использовать его вообще.
Если я выполняю это, это хорошо работает, но не выбирает вторую станцию автоматически:
#!bin/bash
sleep 5
pianobar
Там должен так или иначе записать это так, это автоматически введет "2" и затем позволит мне управлять оттуда? Или застревают я с необходимостью выбрать 2 каждых раза, когда я загружаюсь?
Править:
Я изменил его к этому:
#!bin/bash
sleep 5
{ echo 2 ; cat ; } | pianobar
и это делает ту же самую вещь, как просто "отзываются эхом 2 | pianobar"
"Нет ли опция к pianobar для запуска со станции по умолчанию"
Я был бы мысли так, но я не могу найти команду для настройки по умолчанию, когда я действительно "укомплектовываю pianobar"
Когда я открываю программу, она делает вход в систему, и затем программа запускается с "Избранной станции": я хотел бы за него автоматически войти в 2-ю станцию.
То, что происходит, - то, что Вы связываете stdout echo
с stdin pianobar
, но затем повторяете выходы, и потока не стало. Попробуйте это:
{ echo 2 ; cat ; } | pianobar
Мой основной вопрос, однако, был бы - чего Вы пытаетесь достигнуть? Почему бы не запустить просто pianobar? Разве там опция не к pianobar для запуска со станции по умолчанию, если это - проблема?