ruby開發的互動式程式例子

2021-07-02 04:19:56 字數 1296 閱讀 5377

實現pry,ronin,msf類似的終端下互動功能,這裡主要用到了ripl gem:

1.能夠呼叫定義的方法,如help

2.能夠執行系統命令

3.能夠類似irb/pry進行ruby語言解析

安裝:

gem install ripl

gem install ripl

-shell_commands

示例ripl這個gem,它也提供很多外掛程式,如下是乙個簡單的終端下互動實現:

require

'ripl'

require

'ripl/shell_commands'

require

'ripl/color_result'

require

'ripl/color_streams'

require

'ripl/commands'

require

'ripl/rocket'

#設定輸出顏色

ripl

.config

[:color_streams_stdout]=

:light_blue

ripl

.config

[:color_streams_stderr]=

:light_red

#定義提示符號

ripl

.config

[:prompt]=

lambda

] cmd> "

}# define plugins, load files, etc...

class

dodolook

defhelp

puts

"xiaomi noops blog"

enddef

name

"wilbur"

endend

dodo

=dodolook

.new

verison

="1.0.3"

ripl

.start

:binding

=>

dodo

.instance_eval

使用

在終端下執行程式後,出現[0] cmd>這樣的提示,其中help、name、dodo這些變數/方法可以tab補全。

執行shell命令前加!,如:!df

還有更多內部方法,如: history, list, jump…

嘗試 互動式程式編寫

關於互動式程式,簡單明瞭的說,就是允許與使用者進行互動的程式,或說允許使用者進行輸入操作。這種程式的好處在於對於一些變數可以依據使用者需要進行改變,而不用重新編寫乙個程式或對程式進行修改,變得更加方便。而實際上互動程式並不難實現。在通過對書本的研究,發現其實互動式程式不過就是乙個scanf 的運用罷...

Expect自動化互動式程式

expect是乙個用來實現自動互動功能的軟體套件,是基於tcl的指令碼程式設計工具語言 首先 要安裝expect 直接使用yum安裝即可 yum install expect y每次我們進行ssh連線時都需要輸入密碼 而且首次需要輸入yes來確認 root alice ssh p 22 jenny ...

windows 服務中啟動互動式程式

最近專案中需要在windows服務中啟動互動式程式,還是費了點勁,記錄一下 互動式程式也就是需要與人互動的程式,比如帶有介面的程式,需要接收使用者滑鼠鍵盤訊息的程式。比如 notepad.exe,cmd.exe 非互動式程式也就是跑在後台,不需要人工干預,自己能跑得歡的程式 比如各種服務端程式,類似...