在Ubuntu上,
我用
为Ruby创建了一个可执行文件bin / hello (文件名)
#!/usr/bin/env ruby
但是每当我从bin的父目录
运行bin/hello
时
它出现了: No such file or directory
我确定没有任何拼写错误或其他任何内容。
可能出现什么问题?
答案 0 :(得分:1)
我认为您最有可能使用Windows换行符(CRLF)保存文件;在第一行结束之前的不可见CR
导致可执行搜索失败,并且由于回车而错误消息的一部分“擦除”。
查看vim
中的文件,看看^M
是否显示在行尾。或者,您可以查看xxd bin/hello | head -n 10
的输出,看看是否出现0D 0A
(CR LF)。如果您怀疑CRLF,可以使用dos2unix
将文件修复回Unix(LF)换行符。
答案 1 :(得分:0)
您必须使文件可执行
chmod +x bin/hello
之后通过写
来运行它./bin/hello