dポイントプレゼントキャンペーン実施中!

ServerspecでWindowsパッチ一覧にpatch_list.txtにまとめ、一行ずつ読み込み、そのパッチが
当たっているかをチェックしたいのですが、変数を拾えなくエラーに
なります。

■patch_list.txtの中身
KB201111
KB300000
KB39000
 ・・・
■読み込み処理
#1 File.open('C:\temp\patch_list.txt') do |patch|
#2 patch.each_line do |line|
#3 line2 = line.chomp
#4 describe command('wmi qfe |findstr "#{line2}"’) do
#5 its(:stdout) { should match /#{line2}/ }
#6 end
#7 end
#8 end
---------------------------
#5でのline2はちゃんとKBxxxと拾っているのですが、
#4では拾えなくて""の空の状態です。

変数の記載書式が間違っているのでしょうか。
教えてください。

A 回答 (1件)

#4の


describe command('wmi qfe |findstr "#{line2}"’) do
ですが、両端をシングルクオートでくくると、変数展開が行われません。(#{line2}が展開されません)
両端をダブルクオートでくくります。
describe command("wmi qfe |findstr #{line2}") do
としてください。
    • good
    • 0
この回答へのお礼

アドバイス頂いた通り修正して実行したらOKでした。
ありがとうございます!!

お礼日時:2015/02/25 14:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!