Eine Benachrichtigung in der Benachrichtigungszentrale wäre ideal, aber Knurren, Bounce-Dock, Sound usw. wäre ebenfalls in Ordnung (oder wenn dies nur in Terminal.app möglich ist, würde ich gerne zurückkehren). Gibt es irgendwo in iTerm eine Option, Benachrichtigungen zu aktivieren, oder sollte ich etwas am Ende eines Befehls im Terminal eingeben? Ist letzteres möglich, ist es möglich, eine Benachrichtigung hinzuzufügen, sobald der Prozess gestartet wurde (wenn ich zum Beispiel merke, dass es länger dauern wird, als ich ursprünglich erwartet hatte, kann ich nicht raten).
Abkürzung: ⌥⌘A oder:
Edit -> Marks and Annotations -> Alerts -> Alert on next mark
:
iTerm
NAME _ wird buchstäblich ein Auge (in der rechten oberen Ecke) auf Ihr Terminal werfen. Sobald der Befehl beendet ist, wird er den Notification Center
kontaktieren.
Wir haben den Befehl bereits gestartet. Wir haben den Zeitaufwand für die Fertigstellung unterschätzt, wir möchten ihn nicht stornieren und wir weigern uns, uns hinzusetzen und ihn anzusehen. z.B. ein brew update
nach langer zeit!
iTerm2 -> Install Shell Integration
Beachten Sie, dass die Integration keine Benachrichtigungen anzeigt, bis iTerm2 neu gestartet wird.
Sie können nach jedem Befehl Folgendes hinzufügen, wobei sich zwischen dem Befehl und dem Komma ein Semikolon befindet:
afplay /System/Library/Sounds/Ping.aiff -v 2
osascript -e 'beep 3'
tput bel
oder wenn Sie Notification Center mögen
osascript -e 'display notification "Lorem ipsum dolor sit amet" with title "Title"'
Sie können in Ihrem Profil auch einen Alias mit dem Namen notify
erstellen und diesen am Ende Ihres Befehls hinzufügen. Also in Ihrem Login-Profil
alias notify="tput bel"
dann
sleep 10; notify
Wenn Sie Ihren Befehl gestartet haben und "hängen", geben Sie einfach notify
ein und drücken Sie Enter
. Am Ende wird der Alias notify
ausgeführt, wenn der Befehl beendet ist, z.
sleep 20
# wait 5 seconds before realising this will take 20 seconds
notify<Enter>
Und Sie können immer den Befehl say
verwenden.
Normalerweise, wenn Sie einen langen Prozess innerhalb des Terminals ausführen und aktualisiert werden möchten, können Sie diesen Befehl einfach verwenden, um Dinge wie done
oder error
oder bazinga
auszusprechen.
mvn clean install; say done
Mit diesem Befehl wird eine Java-Spring-App erstellt, die sehr lange dauert und nach Abschluss des Prozesses done
ausgegeben wird.
iTerm2
unterstützt Growl
-Benachrichtigungen. Sie können es in den einzelnen Profileinstellungen aktivieren.
Wählen Sie in Preferences…
-> Profiles
..__ ein Profil aus. Dann gibt es auf der Registerkarte Terminal
die Option Enable Growl Notifications
.
Denken Sie daran, auch iTerm
-Benachrichtigungen in den Growl
-Voreinstellungen zu aktivieren.
Wenn Sie eine Benachrichtigung für einen bestimmten Prozess erhalten möchten, können Sie versuchen, mit Triggers
zu experimentieren. Sie definieren Auslöser auf der Registerkarte Advanced
in Profileinstellungen. Auf diese Weise können Sie einer bestimmten Ausgabe Ihres Prozesses eine Growl-Benachrichtigung zuweisen (Regexp).
Sie könnten zum Beispiel tun:
$ mycommand; echo "end-of-my-process"
Und verbinden Sie den Auslöser mit der Nachricht "Ende meines Prozesses".
Update
Weitere Informationen zu Auslösern finden Sie unter iTerm2.com .
Es gibt ein OSS-Tool namens noti .
Sie können es einfach mit brew install noti
installieren und verwenden, indem Sie Ihrem Befehl noti
wie noti sleep 3
voranstellen.
Sie können auch terminal-notifier
verwenden, die Mac OS-Systembenachrichtigungen verwenden. Um es über Home Brew zu installieren, einfach:
$ brew install terminal-notifier
Wenn Sie eine Benachrichtigung anzeigen möchten, wenn Ihr Job/Prozess abgeschlossen ist, verwenden Sie etwas Ähnliches
$ <your job/process command> && echo 'Completed' | terminal-notifier -sound default
Und diese Anzeige wie folgt:
Sie können auch den Ton und das Symbol für Benachrichtigungen ändern. Weitere Informationen in github repo: https://github.com/julienXX/terminal-notifier