先生们,
我在 Ubuntu 12.04 LTS 64 位上,我想编写一个批处理文件 .sh
只是为了好玩,我写了
#!/bin/bash
echo "test"
USER_NAME= 'myname'
然后我输入了 chmod +x ./filename
然后我执行 ./filename
但是我不断收到“没有这样的文件”的“echo”
当我输入 echo“test”
我看到“测试”
我错过了什么?
答案1
你的意思是command not found
?当我运行你的脚本时,我得到了这个。
问题出在以下行:和USERNAME= 'myname'
之间的空格告诉设置为无(取消设置),然后运行命令。=
'
bash
USERNAME
myname
尝试一下不带空格的做法;我想你会发现它有效。
答案2
先生们,
感谢您的帮助,我终于解决了这个问题。当 Benji 让我发布“cat filename”的结果时,在我的例子中,它没有显示任何内容,但 nano filename 显示该文件不为空。然后我使用 nano 编辑器重新创建了该文件,现在它可以正常工作了。以前我使用 LibreOffice。
我认为原始文件包含一些垃圾字符,导致 bash 无法运行,或者命令中包含一些不可见的字符。但是新创建的批处理现在可以按预期工作。
再次感谢!