如何在不同的目录中执行脚本?

我试过这个

./home/user/scripts/someScript

但它不起作用

没有相应的文件和目录

有任何想法吗?

命令中的前导点表示“相对于当前目录”。 删除它,它将引用“目录/home/user/scripts的文件someScript

 /home/user/scripts/someScript 

如果您获得“权限被拒绝”,则可能是因为您没有足够的权限来访问其他用户的目录中的文件,或者因为该文件不可执行。 要使其可执行,请运行:

 chmod +x /home/user/scripts/someScript 

如果您的脚本需要访问运行它的同一文件夹中的资源,并且您将其指定为相对路径,那么您的脚本将会中断。

我总是在我的脚本的头部添加一个cd $(dirname $0) ,因此包含该脚本的文件夹将是根文件夹。

删除.

如果使用chmod 755 脚本可执行文件来运行它,则只需键入脚本的路径即可。

当您看到./script被使用时,它告诉shell脚本位于您正在执行它的同一目录中。 要使用完整路径,请键入sh /home/user/scripts/someScript