Shell

nohup:無法執行命令“。”:權限被拒絕

  • August 17, 2017

我嘗試使用以下命令執行我的腳本:

nohup . test.sh

nohup . ./test.sh

但是,我得到了:nohup: failed to run command .’: Permission denied`每次。

我真正想做的是在我的腳本中能夠呼叫我別名的命令,但它只適用於“ . test.sh”或“ . ./test.sh”,而不是“ ./test.sh”或“ sh ./test.sh”,因為我得到“找不到命令”。但我希望能夠用“nohup”執行它。

nohup執行一個執行檔。您需要向它傳遞一個外部命令,即一個執行檔。您不能呼叫nohupshell 構造,例如別名、函式或內置函式。nohup執行一個新程序,它不會在現有的 shell 程序中執行某些東西(因為nohup它本身是一個單獨的程序),所以nohup . …沒有意義。

nohup ./test.sh是使用 nohup 執行 shell 腳本的正確方法。確保腳本正確地以 shebang 行 ( #!/bin/sh) 開頭,並且文件是可執行的 ( chmod +x ./test.sh)。

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