Bash

打開某些應用程序時如何自動執行腳本

  • May 26, 2021

我想在打開 vlc 時執行一個 bash 腳本 我試圖將 vlc 的別名放入我的腳本並打開 vlc 但這僅在從終端打開時才有效 我希望我的腳本即使在使用 GUI 打開 vlc 時也能執行

您可以編輯desktop entry以指向呼叫的包裝腳本,vlc然後是您自己的腳本:

cat /usr/local/bin/vlc_wrap.sh
#!/bin/bash
# swap the order if matters
./path/to/your/script.sh &>/dev/null &
/usr/bin/vlc &>/dev/null &

然後編輯desktop entryvlc :/usr/share/applications/vlc.desktop並修改包含Exec 關鍵字的行。新的應該指向您剛剛編寫的包裝器,因此變為:

Exec=/usr/local/bin/vlc_wrap.sh

我已經展示了gnome查找您使用的桌面的文件的方法。

  • 審計d
  • 執行一個執行類似操作的腳本
#! /bin/bash
while :; do
 test -n "`pgrep vlc`" && do_something
 sleep 1
done
  • 最後
mv /usr/bin/vlc /usr/bin/vlc.bin
cat /usr/bin/vlc
#! /bin/bash
nohup /usr/bin/vlc.bin "$@" &> /dev/null < /dev/null &
do_something

引用自:https://unix.stackexchange.com/questions/651505