實現(xiàn)pry,ronin,msf類似的終端下交互功能,這里主要用到了ripl gem:
1.能夠調(diào)用定義的方法,如help
2.能夠執(zhí)行系統(tǒng)命令
3.能夠類似irb/pry進行ruby語言解析
安裝:
gem install ripl
gem install ripl-shell_commands
示例
ripl這個gem,它也提供很多插件,如下是一個簡單的終端下交互實現(xiàn):
require 'ripl'
require 'ripl/shell_commands'
require 'ripl/color_result'
require 'ripl/color_streams'
require 'ripl/commands'
require 'ripl/rocket'
#設(shè)置輸出顏色
Ripl.config[:color_streams_stdout] = :light_blue
Ripl.config[:color_streams_stderr] = :light_red
#定義提示符號
Ripl.config[:prompt] = lambda {"[#{Ripl.shell.line.to_s}] cmd> " }
# Define plugins, load files, etc...
class Dodolook
def help
puts "xiaomi noops blog"
end
def name
"wilbur"
end
end
dodo = Dodolook.new
verison = "1.0.3"
Ripl.start :binding => dodo.instance_eval{ binding }
使用
在終端下運行程序后,出現(xiàn)[0] cmd>這樣的提示,其中help、name、dodo這些變量/方法可以tab補全。
運行shell命令前加!,如:!df
還有更多內(nèi)部方法,如: history, list, jump…
您可能感興趣的文章:- phpmyadmin中為站點設(shè)置mysql權(quán)限的圖文方法
- node.js學(xué)習(xí)之交互式解釋器REPL詳解
- Linux中安裝Python的交互式解釋器IPython的教程
- 淺析mysql交互式連接&非交互式連接
- Shell腳本中非交互式修改密碼的兩種方法
- Linux下交互式與非交互式修改用戶密碼的例子
- PowerShell入門教程之高效使用PowerShell交互式運行環(huán)境的幾個小技巧
- python實現(xiàn)定制交互式命令行的方法
- IIS 配置PHP站點的說明
- PHP MYSQL簡易交互式站點開發(fā)