Как отправить аргументы процессу, работающему в фоновом режиме? - PullRequest
0 голосов
/ 31 января 2019

Я написал небольшой сценарий оболочки, который воспроизводит музыку, когда бы я ее ни назвал.

function playmusic() {
  find /music/path -type f -name "*.mp3" -exec mplayer {} \;
}

и добавил его в мой файл .zshrc, так что теперь я могу воспроизводить музыку, позвонив по номеру playmusic.

Если я работаю с несколькими вкладками, мне нужно было искать вкладку, на которой я играю музыку, но если я знаю, как я могу отправить аргументы в playmusic функцию PID, тогда я могу управлять ею с любого терминала.

любые предложения с благодарностью.

Спасибо.

1 Ответ

0 голосов
/ 31 января 2019

Вы можете использовать подчиненный режим: http://www.mplayerhq.hu/DOCS/tech/slave.txt

Например:

mkfifo ~/.mplayer/fifo

function playmusic(){
    find /music/path -type -name "*.mp3" -exec \
    mplayer -really-quiet -slave -input file=~/.mplayer/fifo {} \;
}

function mmute(){
    echo m > ~/.mplayer/fifo
}
function mquit(){
    echo q > ~/.mplayer/fifo
}
...