【问题标题】:Trying to execute a ruby file from Terminal but permission denied尝试从终端执行 ruby 文件但权限被拒绝
【发布时间】:2015-04-04 21:51:21
【问题描述】:
所以我试图执行一个非常简单的 ruby 文件,该文件保存在我的用户文件夹中(默认情况下),并尝试从终端执行它(我使用的是 Yosemite 版本)。进入后:
#!/usr/bin/env ruby
(然后将文件拖到终端)
它给了我这个:
-bash:(文件)权限被拒绝
我一直在互联网上查看,他们说我应该解锁 Root,我已经这样做了,但它仍然给我同样的拒绝。
我对这件事很陌生,很想得到一些帮助!微笑 | :)
谢谢!
【问题讨论】:
标签:
ruby
terminal
permission-denied
【解决方案1】:
您需要文件chmod +x my_file的执行权限才能执行它。
执行 ruby 脚本的三种方法:
如果您使用的是 bash:
. my_file
在任何外壳中:
./my_file
ruby my_file(只有这个不需要#!/usr/bin/env ruby)
或者只是my_file,如果它在你的PATH
中
我认为只有./my_file或my_file需要执行权限,其他只需要读取权限(尽量确定)。
您甚至可以使用 echo test |my_file 将内容导入 STDIN 并将其放入 my_file 中:
while line = $stdin.gets do
print line
end