无法将path传递给shell脚本

我是OSX的新手,不要经常使用命令行。 我试图使用脚本来做一些自动部署,但是当我执行脚本时,它正在寻找一个目录。

我试过了:

sh myscript.sh '/Users/profiles/Desktop/Development' sh myscript.sh /Users/profiles/Desktop/Development sh myscript.sh -/Users/profiles/Desktop/Development 

但我一直得到“没有这样的文件或目录”。 什么是正确的方法来做到这一点?

我知道这是一个基本的问题,但我似乎无法find一个简单的答案。 我发现在谷歌上的一切都更加先进..

更新:在脚本中,它正在寻找这样的path:

 DIR_DEVELOP=$@ if [ -z $DIR_DEVELOP ]; then echo "Syntax: myscript.sh <destination>" exit 1 

你必须在bash中启用跟踪:

 bash -x myscript.sh '/Users/profiles/Desktop/Development' 

您将在生成错误的行后面看到“No such file or directory”消息。

你不需要在你的path中使用' 。 根据高级Bash脚本指南 :

$ @
与$ *相同,但是每个参数都是一个带引号的string,也就是说,这些参数是完整的传递,没有解释或扩展。 这意味着,除其他外,参数列表中的每个参数都被视为一个单独的单词。

所以脚本尝试访问的path字面上是'/Users/profiles/Desktop/Development'而不是/Users/profiles/Desktop/Development