Ruby可执行文件无效

时间:2013-08-27 01:30:50

标签: ruby linux shell

在Ubuntu上,

我用

为Ruby创建了一个可执行文件

bin / hello (文件名)

#!/usr/bin/env ruby

但是每当我从bin的父目录

运行bin/hello

它出现了: No such file or directory

我确定没有任何拼写错误或其他任何内容。

可能出现什么问题?

2 个答案:

答案 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