Shell
nohup:無法執行命令“。”:權限被拒絕
我嘗試使用以下命令執行我的腳本:
nohup . test.sh
和
nohup . ./test.sh
但是,我得到了:
nohup: failed to run command
.’: Permission denied`每次。我真正想做的是在我的腳本中能夠呼叫我別名的命令,但它只適用於“
. test.sh
”或“. ./test.sh
”,而不是“./test.sh
”或“sh ./test.sh
”,因為我得到“找不到命令”。但我希望能夠用“nohup”執行它。
nohup
執行一個執行檔。您需要向它傳遞一個外部命令,即一個執行檔。您不能呼叫nohup
shell 構造,例如別名、函式或內置函式。nohup
執行一個新程序,它不會在現有的 shell 程序中執行某些東西(因為nohup
它本身是一個單獨的程序),所以nohup . …
沒有意義。
nohup ./test.sh
是使用 nohup 執行 shell 腳本的正確方法。確保腳本正確地以 shebang 行 (#!/bin/sh
) 開頭,並且文件是可執行的 (chmod +x ./test.sh
)。