M. *_*han 5 notification command-line gnome-terminal notify-send
我需要在通知中显示终端命令的结果。
通知可以通过运行来触发:
notify-send "Notification message"
Run Code Online (Sandbox Code Playgroud)
我的命令是:
sudo /opt/lampp/xampp start
Run Code Online (Sandbox Code Playgroud)
在终端中显示以下结果:
Starting XAMPP for Linux 5.6.20-0...
XAMPP: Starting Apache...already running.
XAMPP: Starting MySQL...already running.
XAMPP: Starting ProFTPD...already running.
Run Code Online (Sandbox Code Playgroud)
我希望此结果显示在通知中,就像“通知消息”显示在notify-send.
谢谢!
在大多数情况下,你可以使用notify-send与命令替换 $()。例如:
notify-send "XAMP Start" "$(sudo /opt/lampp/xampp start)"
Run Code Online (Sandbox Code Playgroud)
在一个脚本中,您可以使用一个函数来包装整个输出:
#!/bin/bash
main() { echo "Line 1"; echo "Line 2"; echo "Line 3"; }
notify-send "Script output" "$(main)"
Run Code Online (Sandbox Code Playgroud)
如果您需要使用以下命令运行该功能sudo:
notify-send "Script output" "$(sudo bash -c "$(declare -f main); main")"
Run Code Online (Sandbox Code Playgroud)