0

在 Ubuntu 上,

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

bin/hello(文件名)

#!/usr/bin/env ruby

但是每当我bin/hello从 bin 的父目录运行时

它提出了: No such file or directory

我确定没有任何错字或任何东西。

有什么问题?

4

2 回答 2

1

我认为您很可能使用 Windows 换行符 (CRLF) 保存了文件;第一行末尾之前的不可见CR会导致可执行搜索失败,并且由于回车,部分错误消息会“擦除”自身。

查看文件,vim看看是否^M显示在行尾。或者,您可以查看输出xxd bin/hello | head -n 10并查看0D 0A(CR LF) 是否出现。如果您怀疑 CRLF,您可以使用dos2unix将文件修复回 Unix (LF) 换行符。

于 2013-08-27T05:47:34.440 回答
0

您必须使文件可执行

chmod +x bin/hello

之后通过编写运行它

./bin/hello
于 2013-08-27T05:30:16.920 回答