簡體   English   中英

Bash腳本無法執行bash腳本

[英]Bash script failing to execute bash script

我正在嘗試運行一個腳本,該腳本將一些文件安裝在用戶指定的目錄中。 用戶指定目錄后,我想將主文件傳輸到該目錄,以便它可以在那里執行更多任務,然后在完成操作后最終將其自身刪除。

    #prompt for directory in which to build project
    read -p "Drag and drop the directory in which you'd like to build this project:  "

    echo "reply is $REPLY"
    cp ./myScript.sh $REPLY
    /bin/bash $REPLY/myScript.sh

我已經有了執行該問題文件的腳本。 我嘗試使用source $REPLY/myScript.sh以及簡單的sh $REPLY/myScript.sh 我收到錯誤/path/to/file/ is a directory

一定是它不知道我要運行myScript.sh,但是我不知道如何給它指定目錄。

可能的原因是拖放操作在目錄名稱后放置了空格。

從而:

/bin/bash $REPLY/myScript.sh

會運行

/bin/bash /path/to/directory /myScript.sh

如果僅是標准空間,那么一個簡單的修復方法是:

/bin/bash "${REPLY% }/myScript.sh"

您在read命令中缺少該變量,因此很遺憾,它將因您所讀取的任何內容未存儲而失敗。 您可以按以下方式替換read命令。

#prompt for directory in which to build project
    read -p "Drag and drop the directory in which you'd like to build this project:  " REPLY

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM