Bash 以其他目录中的文件作为参数运行脚本文件

Bash 以其他目录中的文件作为参数运行脚本文件,bash,Bash,所以我试着做上面的事情,但是is表示没有这样的文件或目录。是否有任何可能的方法仍然这样运行它,但不会出现错误。可能与我的脚本文件本身声明的参数有关。当前我的脚本文件代码中有$1作为参数。希望有人能帮上忙。谢谢您确定要将脚本传递给文件的绝对路径吗您正试图将其用作参数?因此我的脚本文件位于目录workspaceA中。我在该工作空间a中有一个子目录,其中包含许多文件。我希望像运行./myscript.sh filename一样运行它,但从workspaceA运行。那么我应该更改什么。。我的脚本文件代码

所以我试着做上面的事情,但是is表示没有这样的文件或目录。是否有任何可能的方法仍然这样运行它,但不会出现错误。可能与我的脚本文件本身声明的参数有关。当前我的脚本文件代码中有$1作为参数。希望有人能帮上忙。谢谢

您确定要将脚本传递给文件的绝对路径吗您正试图将其用作参数?因此我的脚本文件位于目录workspaceA中。我在该工作空间a中有一个子目录,其中包含许多文件。我希望像运行./myscript.sh filename一样运行它,但从workspaceA运行。那么我应该更改什么。。我的脚本文件代码:cat$1 | grep-c“mypattern”$1@user1858268如果它位于脚本所在的目录中,则
/myscript.sh子目录/filename
应该可以工作。请确保您是双引号
“$1”
在脚本中,以防止在path/filename参数中出现空格时出现分词,并防止路径扩展。然后看看
basename
dirname
内置代码。你能发布脚本的相关部分吗?这将有助于确定问题所在。