【问题标题】:.sh script does not run on SSH instance on Google Cloud.sh 脚本无法在 Google Cloud 上的 SSH 实例上运行
【发布时间】:2018-04-05 10:33:14
【问题描述】:

当我尝试在 Google 云上的 SSH 实例上运行 .sh 脚本时,我收到以下错误:

    bash: abc.sh command not found

当我在 Google shell 上运行它时,它运行良好。我尝试在 sshd_config 文件中设置“PermitUserEnvironment yes”,但这并没有改变输出。

从我对类似问题的阅读来看,似乎我应该设置一些其他 PATH 变量,但我不确定这些是哪些变量。

【问题讨论】:

  • 快速提问:脚本的第一行是#!/bin/bash 吗?如果没有,添加它,运行chmod +x nameofyourscript.sh 并尝试再次运行它
  • 是的,第一行是 #!/bin/bash 。并且该文件具有执行权限。
  • 您是否也尝试使用路径运行它? /path/to/file.sh 你也可以试试source file.shbash file.sh
  • “在 SSH 实例上”是什么意思,您是登录机器还是通过 SSH 发送命令?
  • 感谢 GalloCedrone,正如你所猜到的,当我尝试 ./file.sh 从其目录运行文件时,它运行了。

标签: ssh google-cloud-platform google-compute-engine


【解决方案1】:

使用路径运行命令解决了问题。

/path/to/file.sh

您无法运行该命令,因为 bash 试图在 PATH 环境变量指定的位置内找到该命令,因为您没有指定路径。

未来阅读的人可以找到有关可能原因的有用信息here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-17
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 2020-03-26
    • 1970-01-01
    相关资源
    最近更新 更多