Время от времени я выполняю некоторые скрипты на Python, выполнение которых занимает довольно много времени.
Я выполняю их так:
$ time python MyScript.py
Как я могу воспроизвести звук, как только закончится выполнение сценария?
Я использую Ubuntu 10.10 (рабочий стол Gnome).
bash
илиzsh
? На самом деле есть несколько способов сделать это автоматически, но они довольно сложны и зависят от того, какую оболочку вы используете.Ответы:
Добавьте любую команду, которая воспроизводит звук; это может быть так просто, как
или так сложно, как
(Команды предполагают, что pulseaudio установлен; замените ваш аудиоплеер, который будет зависеть от среды вашего рабочего стола.)
источник
paplay
, вероятно, лучшая команда для воспроизведения звука в "современной" системе Linux.time python MyScript.py -n 40 && paplay /usr/share/sounds/ubuntu/stereo/desktop-login.ogg || paplay /usr/share/sounds/ubuntu/stereo/phone-outgoing-busy.ogg
printf '\7'
у меня работает (папайла нет; (git shell)) но это просто очень маленький бип . Есть ли еще коды, которые издают другие звуки? Я пытался\6
,\8
но они некоторые персонажи.\7
(BEL) обычно является единственным символом, который, возможно, вызывает звук (см. статью « Символ управления» в Википедии ); обратите внимание, что он не всегда может издавать звук.for i in {1..30}; do for j in {1..3}; do printf '\7'; sleep 0.12; done; sleep 0.4; done
spd-say
Бесконечный цикл,
-w
если вам нужна дополнительная мотивация:Предварительно установлено 14.04 с помощью пакета
speech-dispatcher
: http://releases.ubuntu.com/trusty/ubuntu-14.04.4-desktop-amd64.manifest для слепых, я полагаю?Также добавьте всплывающее окно
Этот комбо спасатель жизни (
b
означаетbeep
):а потом:
Если я где-то в комнате, я услышу это и узнаю, что долгая работа сделана.
В противном случае я увижу всплывающее окно, когда вернусь к своему компьютеру.
Связанный: https://stackoverflow.com/questions/7035/how-to-show-a-gui-message-box-from-a-bash-script-in-linux
источник
spd-say
связать инструмент сspeech-dispatcher
, вам может понадобиться установить подпакет вродеspeech-dispatcher-utils
(Fedora 24).Просто выберите звук на жестком диске и введите команду для его воспроизведения сразу после команды, которую вы ожидаете; они будут происходить последовательно:
(Вы можете использовать любой плеер, естественно). У меня есть скрипт,
alertdone
который воспроизводит звук и показывает предупреждение libnotify при запуске; Я использую это именно для этого случая:Это действительно просто, так что если вы хотите сделать свой собственный вы можете основывать его на это (мое требует
notify-more
,mplayer
и~/tones/alert_1.wav
хотя):источник
notify-more
илиnotify-send
действительно может быть полезной альтернативой воспроизведению звука.play
это очень простой (без пользовательского интерфейса) звуковой проигрыватель из пакета sox Install sox http://bit.ly/software-small . Вы можете заменить его любым другим звуковым проигрывателем, управляемым из командной строки.источник
play
,aplay
илиpaplay
. (Моя система Ubuntu имеетaplay
иpaplay
по умолчанию.)time python MyScript.py -n 40; paplay /usr/share/sounds/ubuntu/stereo/desktop-login.ogg
сработало, спасибо.Лично я пользуюсь
my-script && notify-send "done"
. Это отправляет уведомление на рабочем столе, которое в Linux Mint (Cinnamon) выглядит следующим образом:источник
Вы также можете сделать это автоматически.
Я покажу вам, как
zsh
, а затем добавить информацию оbash
.Суть выглядит так:
Вы также можете сделать это, только если программа была на Python, например
В
bash
, лучший способ для загрузки preexec.bash.txt и его источника (например ,. ~/preexec.bash.txt
в верхней части вашего~/.bashrc
, то выше (или что - то близкое к нему) должен работать. (Не уверен насчет$3
немного , чтобы проверить , если команда Python .)Если вы используете терминал GNOME, я бы также указал на мигание терминала GNOME . Это патч, который я написал, который заставляет терминал мигать, когда команда выполнена, поэтому вы можете нажать Alt-Tab для чего-то другого, а затем он сообщит вам, когда это будет сделано.
источник
Вам не нужно добавлять команду ко всему, вы можете использовать скрипт, который делает это автоматически для вас. Это называется unistract-me и доступно на Github.
пример
Теперь начните новый Bash, и все готово. Звук и оповещение можно изменить, изменив скрипт.
источник
Любой игрок может быть использован. Я добавляю
cvlc
для полноты.источник