我正在尝试运行一个脚本,该脚本将一些文件安装在用户指定的目录中。用户指定目录后,我想将主文件传输到该目录,以便它可以在那里执行更多任务,然后在完成操作后最终将其自身删除。
#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
我已经有了执行该question文件的脚本。我尝试使用
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"
关于linux - Bash脚本无法执行bash脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30171999/