將 bash 腳本移到 /bin 目錄

將 bash 腳本移到 /bin 目錄

我有一個名為的 bash 腳本 腳本.sh。當它在我的時候效果很好/家目錄。/垃圾桶目錄,用於將其作為命令運行。起初它運作得很好(作為一個命令,在我的/垃圾桶),但是重啟後就停止工作了。當我在終端中輸入Script.sh, 時,沒有任何反應,我必須使用Ctrl+C 才能讓終端再次工作。當我的腳本.sh在我的/垃圾桶,我的spd-say命令也不起作用(當我在終端機中使用它時,它不會發音參數)。將腳本從/垃圾桶,一切都得到糾正。將文件移動到時是否有任何問題/垃圾桶

$ echo $PATH
:/home/m/bin:/home/m/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

這是腳本的第一部分。

#!/bin/bash
spd-say -w "Do you know this man?"
xdg-open $(locate "X.jpg")
read a
if [ "$a" == "yes" ]
then
spd-say -w "Call the police."
else
spd-say -w "Thanks."
fi

答案1

我沒有足夠的聲譽來發表評論,但在我看來,您需要將腳本放在 /usr/local/bin 中。

man hier(7)

/bin
    This  directory contains executable programs which are needed in 
    single user mode and to bring the system up or repair it.

/usr/local/bin
    Binaries for programs local to the site.

你知道,複製sudo cp並檢查權限。

但如果您只想自己使用該程序,請將其放入/home/$USER/bin資料夾中。

另外,您可以從腳本建立符號連結到 /usr/local/bin 中的路徑

ln -s /full/path/to/your-script.sh /usr/local/bin/<empty or optional name>

相關內容