但是,我並不滿足於改善進入桌面時間,深深覺得開機後如果能開啟我想要執行的軟體那該有多好。
於是寫了個 bash script 來監視某些我想在重開機後執行軟體的功能,另外加上 crontab 定時執行這個 bash script 保持抓取資料是最新的狀態(這是預防突然當機,而沒有紀錄到資料),最後,在把該 bash script 位置寫入 auto-run 檔即可。
P.S1 此方法只適用 KDE
有點要說明:需要該軟體有 Desktop 檔,執行檔檔名需要跟 Desktop 檔一致
比如 transmission-qt 在 /usr/share/applications 或 ~/.local/share/applications 中有個檔案名稱為 transmission-qt.desktop 若是沒有 Desktop 你可以自已寫一個。
會想寫這個 bash script 就是為了開機自動開啟下載軟體,但 Windows 的 SmartGet 沒有 Linux 版,只有利用 Wine run 可是沒有 Desktop 檔只好自已寫個囉。
P.S Desktop 檔寫入有其規範網上搜就有,這裡只簡略說明。
SmartGet 在應用程式選單是屬於網路類別
- Categories=Network
- Exec 執行檔案位置
這是 Wine 啟動 Windows 方式
Exec=sh -c "env WINEPREFIX="/home/hepha/.wine" wine /home/hepha/FreeSmg/SmartGet/SMG.exe"
最關鍵的地方是此 bash script 是抓 Exec 中的資料,那麼你的執行檔跟Desktop需要跟 Exec 有部份關連,比如 SMG.desktop 中 Exec 是 SMG.exe
現在實際寫入 desktop
vim ~/.local/share/applications/SMG.desktop
Copy and Pass
After modifying meet your needs
[Desktop Entry]
Categories=Network;
Encoding=UTF-8
Exec=sh -c "env WINEPREFIX="/home/hepha/.wine" wine /home/hepha/FreeSmg/SmartGet/SMG.exe"
Icon=E4B0_SMG.0
Name=SMG
現在就開啟你的文字編輯器,檔案名稱、存放路徑及以下紅色文字都可以自訂。
vim /home/hepha/bin/reapp
先看以下程式碼:某些地方請改為符合你需求。
- 這是會將記錄寫入指定路徑的檔案中
runapp="/home/hepha/bin/runapp" - 這是我所要監視的軟體清單
for apps in SMG qbittorrent jdownloader vuze transmission-qt - 維持一慣風格開機後 auto-run 設定個間隔時間,這裡設為 10秒 後執行下個程式
sleep 10
實際寫入
vim /home/hepha/bin/reapp
Copy and Pass
After modifying meet your needs
#!/bin/bash
runapp="/home/hepha/bin/runapp"
rm -f $runapp
echo "#!/bin/bash" > $runapp
chmod +x $runapp
for apps in SMG qbittorrent jdownloader vuze transmission-qt ; do
if pgrep "$apps" &>/dev/null
then
for dir in /usr/share/applications ~/.local/share/applications
do
if [ -f "$dir/$apps.desktop" ]
then
echo kioclient exec "$dir/$apps.desktop" >> "$runapp"
echo sleep 10 >> "$runapp"
fi
done
fi
echo -e '\E[37;44m'"\033[1mCreation Runapp\033[0m"
cat $runapp
現在用 crontab 排程 每 N 分自動執行 reapp
這是設我設為每 5 分執行一次,還有路徑你也需要修改。
現在寫入個人的排程
crontab -e
Copy and Pass
After modifying meet your needs
*/5 時 日 月 周 命令
crontab 寫法對應:
分 時 日 月 周 命令
以上關於定時監視軟體已經完成,最後,我們將需要在開機時自動讓他執行 runapp。
vim ~/.kde4/Autostart/auto-run
Copy and Pass
After modifying meet your needs
#!bin/bash路徑是是填入剛剛 runapp="/home/hepha/bin/runapp" 的位置。
/home/hepha/bin/runapp
到這裡已經全部設定完成,只要在你用電腦的過程中每 N 分就會紀錄特定軟體,重新開機後就會自動重新執行囉。
沒有留言:
張貼留言