1
我正在Ruby中执行一个演示命令行项目。该结构是这样的:Ruby项目 - 防止从操作系统命令行直接调用ruby文件
/ROOT_DIR
init.rb
/SCRIPT_DIR
(other scripts and files)
我只允许用户进入使用init.rb
的应用程序,但因为它的立场,任何人都可以进入子文件夹,并直接调用其他Ruby脚本。
问题:
- 可以在上面的场景防止有什么办法呢?
- 如果我要使用目录权限,当从Windows计算机上运行代码到Linux机器上时它会重置吗?
- 有什么可以包含在Ruby文件本身,以防止从OS命令行直接调用它?
谢谢,第一个解决方案正在按照需要工作。还有一个问题:FROM_INIT是一个常量,在程序的整个生命周期中,常量是全局的。那么像“$ from_init”这样的全局变量如何与常量不同呢? – Spandan
@Spandan一个常量不能改变,而一个全局变量可以。请参阅:http://pastebin.com/QEUdxhiK;全球也将工作。 – Carpetsmoker
啊谢谢澄清。 – Spandan