我有以下脚本:
#!/bin/bash
if test -f "/path/pycharm.sh"; then sh ./pycharm.sh;
fi
我正在尝试跑步pycharm.sh从 bash 文件中,我仔细查看了该文件所需的所有权限。不幸的是,每次我运行它时,我都会得到这个:
无法打开./pycharm.sh
答案1
您不用./
来运行脚本一般来说,您使用它来运行程序(脚本或编译的二进制文件)
在当前目录下。如果第二个脚本位于 中/path/pycharm.sh
,那么您应该将其运行为/path/pycharm.sh
, 而不是./pycharm.sh
。
答案2
您的 shell 脚本位于另一个目录中,请使用绝对路径。
sh /path/pycharm.sh
答案3
该错误相当明确:
- 它要么不存在于指定的路径中,要么
- 它没有权限打开它。
由于您使用的是相对路径,所以我会把钱放在第一个路径上。指定第二个的完整路径pycharm.sh
,它应该可以工作。
答案4
我是否遗漏了某些内容,或者您是否打算执行您首先检查其是否存在的字符串。如果是的话,那么正确的做法是这样的:
#!/bin/bash
if test -f "/path/pycharm.sh"; then /path/./pycharm.sh;
fi