2
我試圖重寫一些的bash腳本和部分之一檢查是否一定的轉速下在系統上安裝了一個基本的if語句檢查RPM安裝使用Ruby腳本
if rpm -qa | grep rpmnamehere; then
do stuff
我想做的事情在ruby中有類似的東西,但是對於這個我很新,而且不確定在文檔中的位置。
感謝
我試圖重寫一些的bash腳本和部分之一檢查是否一定的轉速下在系統上安裝了一個基本的if語句檢查RPM安裝使用Ruby腳本
if rpm -qa | grep rpmnamehere; then
do stuff
我想做的事情在ruby中有類似的東西,但是對於這個我很新,而且不確定在文檔中的位置。
感謝
可以在Ruby腳本調用shell命令,並在可變
a = %x{rpm -qa | grep rpmnamehere}
puts a
或只調用命令的輸出保存
所以,我認爲你可以解決你的問題像這樣
unless `rpm -qa | grep rpmnamehere`.empty?
# do stuff
end
你可以做這樣的事情在Ruby代碼:
if system "rpm -qa | grep rpmnamehere"
#additional ruby statements
end
系統調用將返回true或false取決於如果系統命令成功與否。
我覺得這有點清潔,我想依靠grep給出正確的退出代碼是相當安全的。 –