make installする段階で以下のエラーがでてとまった。
vine4.1のときは、何も苦労するところがなかったが。
そのときのnmapのversionはなんだったかな。
error: invalid Python installation: unable to open /usr/lib/python2.4/config/Makefile (No such file or directory)
make: *** [install-zenmap] エラー 1
結局、調べるのも面倒だったのでapt-getでインストール。
あとで調べておこう。
2007年12月29日土曜日
2007年12月10日月曜日
rubyを使って、標準入力から入力を受け付けるプログラムに入力値を渡す
標準入力から入力(整数値)を受け取って、それを用いるプログラムを使用する時のお話。
入力値をー8から8まで1ずつ増やしていき、各々の値に対してそのプログラムを走らせる必要があったのだが、rubyで自動化するのに少し手間取った。
これまでは、perlを用いて下のようにしていた。
これをrubyで行おうとして、はじめは次のように書いた。
ところが、rubyではrubyスクリプト内で用いられているiは""の中では展開されない。
perlでは数値として扱われるところがrubyとperlにおける違いの一つのようだ。
そこで、式展開 #{}を用いて以下のように修正する。
これで期待どおりに動いた。
入力値をー8から8まで1ずつ増やしていき、各々の値に対してそのプログラムを走らせる必要があったのだが、rubyで自動化するのに少し手間取った。
これまでは、perlを用いて下のようにしていた。
#!/usr/bin/perl
for($i=-8; $i<=8; $i++){
system("echo $i | 実行プログラム");
}
これをrubyで行おうとして、はじめは次のように書いた。
#!/usr/bin/ruby
for i in -8..8
system("echo i | 実行ファイル");
end
ところが、rubyではrubyスクリプト内で用いられているiは""の中では展開されない。
perlでは数値として扱われるところがrubyとperlにおける違いの一つのようだ。
そこで、式展開 #{}を用いて以下のように修正する。
#!/usr/bin/ruby
for i in -8..8
system("echo #{i} | 実行ファイル");
end
これで期待どおりに動いた。
登録:
投稿 (Atom)