我想运行一个非常简单的bash脚本,在shell上运行一些命令。现在,一切由是:简单的Bash脚本说没有找到命令
#!/bin/bash
eos
其中“EOS”是运行如果我在同一个外壳手动运行它,我在服务器上使用完全正常的完全合法的命令。
然而,当我使用chmod + x和执行该脚本,我得到的错误:
没有人有任何想法,为什么它不会提交这些命令?
在此先感谢!
我想运行一个非常简单的bash脚本,在shell上运行一些命令。现在,一切由是:简单的Bash脚本说没有找到命令
#!/bin/bash
eos
其中“EOS”是运行如果我在同一个外壳手动运行它,我在服务器上使用完全正常的完全合法的命令。
然而,当我使用chmod + x和执行该脚本,我得到的错误:
没有人有任何想法,为什么它不会提交这些命令?
在此先感谢!
什么用户正在运行该脚本?我怀疑是一个环境或密码问题,虽然权限是可能的。 尝试使用eos的完整路径或在脚本中设置必要的环境。
谢谢,我甚至没有想过eos是一个别名(我也不知道你不能在bash脚本中使用别名)。无论如何,我只是键入了整个别名,现在它工作正常。谢谢! – khfrekek
在命令所在的目录不在PATH(一个env变量)中找到命令时,在unix shell中找不到“command not found”错误。
对此的解决方案是任一的任何无论是在壳启动文件或用户下面
一个)变化PATH和出口PATH变量提到的方法2的型材
export PATH=$PATH:/eos-command-directory-location/
b)运行EOS命令在你已经开发完整路径的shell脚本中
1.您不需要导出'PATH'变量(它很可能已经标记为导出)。 2.你的作业中有拼写错误:路径以冒号分隔。你需要引用'PATH'变量的扩展。 4.您是否读过OP的问题已解决,您是否注意到您的问题在您的答案中未提及? (所以你的声明_解决这个问题的方法是下面提到的两种方法中的任何一种 - 是不正确的)。 –
更正了错字,谢谢 – iam
不是'eos'只是一个别名? – ewcz
尝试'输入eos'来找出真正的'eos'。 – choroba
你们是对的!我甚至没有想过eos是一个别名(我也不知道你不能在bash脚本中使用别名)。无论如何,我只是键入了整个别名,现在它工作正常。谢谢! – khfrekek