Od czasu do czasu wykonuję niektóre skrypty Pythona, których wykonanie zajmuje dużo czasu.
Wykonuję je w następujący sposób:
$ time python MyScript.py
Jak mogę odtworzyć dźwięk po zakończeniu wykonywania skryptu?
Używam Ubuntu 10.10 (pulpit Gnome).
bash
lubzsh
? Istnieje kilka sposobów, aby to zrobić automatycznie, ale są one dość zaangażowane i zależą od używanej powłoki.Odpowiedzi:
Dołącz dowolne polecenie odtwarzające dźwięk; może to być tak proste jak
lub tak złożone jak
(Polecenia zakładają, że pulseaudio jest zainstalowane; zamień odtwarzacz dźwięku, który będzie zależał od środowiska pulpitu).
źródło
paplay
jest prawdopodobnie najlepszym poleceniem do odtwarzania dźwięku w „nowoczesnym” systemie 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'
działa dla mnie (paplay nie; (git shell)), ale to tylko bardzo mały bip . Czy jest więcej kodów, które wydają inne dźwięki? Próbowałem\6
,\8
ale to niektóre postacie.\7
(BEL) jest zwykle jedyną postacią, która może wywołać dźwięk (patrz artykuł w Wikipedii Znak kontrolny ); należy pamiętać, że nie zawsze może to również wydawać dźwięki.for i in {1..30}; do for j in {1..3}; do printf '\7'; sleep 0.12; done; sleep 0.4; done
spd-say
Nieskończona pętla,
-w
jeśli potrzebujesz dodatkowej motywacji:Zainstalowany fabrycznie 14.04 za pośrednictwem pakietu
speech-dispatcher
: http://releases.ubuntu.com/trusty/ubuntu-14.04.4-desktop-amd64.manifest dla niewidomych?Dodaj także wyskakujące okienko
Ta kombinacja ratuje życie (
b
oznaczabeep
):i wtedy:
Jeśli jestem gdzieś w pokoju, usłyszę to i będę wiedział, że długa robota jest skończona.
W przeciwnym razie wyświetlę wyskakujące okienko po powrocie do komputera.
Powiązane: https://stackoverflow.com/questions/7035/how-to-show-a-gui-message-box-from-a-bash-script-in-linux
źródło
spd-say
powiązanie z narzędziemspeech-dispatcher
, może być konieczne zainstalowanie podobnego pakietuspeech-dispatcher-utils
(Fedora 24).Po prostu wybierz dźwięk na dysku twardym i wprowadź polecenie, aby odtworzyć go zaraz po poleceniu, na które czekasz; będą się pojawiać sekwencyjnie:
(Możesz oczywiście użyć dowolnego odtwarzacza). Mam skrypt o nazwie,
alertdone
który gra dźwięk i wyświetla alert libnotify po uruchomieniu; Używam go właśnie na tę okazję:To naprawdę proste, więc jeśli chcesz zrobić własną można oprzeć go na to (kopalnia wymaga
notify-more
,mplayer
i~/tones/alert_1.wav
chociaż):źródło
notify-more
lubnotify-send
może rzeczywiście być użyteczną alternatywą dla odtwarzania dźwięku.play
jest bardzo prostym (bez interfejsu użytkownika) odtwarzaczem dźwięku z pakietu sox Install sox http://bit.ly/software-small . Możesz go zastąpić dowolnym innym odtwarzaczem dźwięku uruchamianym z wiersza poleceń.źródło
play
,aplay
, lubpaplay
. (Mój system Ubuntu maaplay
ipaplay
domyślnie.)time python MyScript.py -n 40; paplay /usr/share/sounds/ubuntu/stereo/desktop-login.ogg
pracował, dzięki.Osobiście używam
my-script && notify-send "done"
. To wysyła powiadomienie na pulpicie, które w Linux Mint (Cinnamon) wygląda następująco:źródło
Możesz to również zrobić automatycznie.
Pokażę ci, jak wejść
zsh
, a następnie dodaj informacje obash
.Esencja wygląda następująco:
Możesz także zrobić to tylko wtedy, gdy programem był Python, np
W
bash
najlepszym sposobem jest pobranie preexec.bash.txt i źródło to (np. ~/preexec.bash.txt
na górze~/.bashrc
, a następnie powyżej (lub coś podobnego do niego) powinno działać. (Nie wiem, o$3
nieco, aby sprawdzić, czy polecenie jest Python .)Jeśli używasz GNOME Terminal, chciałbym również wskazać Flashing Terminal GNOME . Jest to łatka, którą napisałem, która powoduje, że terminal miga po wykonaniu polecenia, więc możesz Alt-Tab do czegoś innego, a następnie informuje, kiedy jest zrobione.
źródło
Nie musisz dodawać polecenia do wszystkiego, możesz faktycznie użyć skryptu, który zrobi to automatycznie. Nazywa się to mnie rozpraszać i jest dostępne na Github.
przykład
teraz rozpocznij nowy bash i jesteś gotowy. Dźwięk i alarm można zmienić, modyfikując skrypt.
źródło
Można użyć dowolnego gracza. Dodam
cvlc
dla kompletności.źródło