Archive for 5月 14th, 2011
Rubyのコマンドライン引数
ちょっと適当に作ってみましたが、メモです。
実行結果:
u9x@G31M-U1104:~/tmp % ./optparse.rb こんにちは ありがとう いただきます
0 こんにちは
1 ありがとう
2 いただきます
スクリプトのコード:
#!/usr/bin/ruby -Ku
if ARGV.size > 0 then
0.upto(ARGV.size-1) do |x|
print “#{x} #{ARGV[x]}\n”
end
end
Rubyのコマンドラインオプション処理(optparse)
ややこしいですが、ある程度基本的なところは理解できてきました。使わないでいるとすぐに忘れそうなのでメモしておきます。
#!/usr/bin/ruby -Ku
require ‘optparse’
chk=false
OptionParser.new {|opt|
opt.on(‘-a VAL’) {|v|
chk = v; p “こちらは[]がないので引数は必須になっています。値をありがとうです。→ #{v}”
}
opt.on(‘-b’) {|v| chk=v; p “真偽値は、#{v}です。よろしくです!” }
opt.on(“-n”, “–nameset VALUE”, {“hi” => “hirono_hideki”, “ks” => “kokuhatu_hirono”}){|w|
p “こちらは[]がないので引数は必須になっています。値をありがとうです。→ #{w}”
}
opt.on(“-o”, “–osset [VALUE]”, {“ln” => “Linux”, “ub” => “Ubuntu 11.04”}){|w|
p w ||= “未定義です。引数はオプションなので代わりに入れました。よろしくです!”
}
opt.parse!(ARGV)
}
if (chk) then
p “#{chk} OK\n”
end
#実行例:
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -a xxx
#”こちらは[]がないので引数は必須になっています。値をありがとうです。→ xxx”
#”xxx OK\n”
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -b
#”真偽値は、trueです。よろしくです!”
#”true OK\n”
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -n ks
#”こちらは[]がないので引数は必須になっています。値をありがとうです。→ kokuhatu_hirono”
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -o
#”未定義です。引数はオプションなので代わりに入れました。よろしくです!”
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -o “値です。”
#”未定義です。引数はオプションなので代わりに入れました。よろしくです!”
#u9x@G31M-U1104:~/tmp % ./optparse3.rb -o ln
#”Linux”
#u9x@G31M-U1104:~/tmp %
hirono_hidekiのツイート_2011-05-13
- 今日は裁判員裁判三者検討会があった。検察官にとって私はどういう存在なのかふと気になった。やっぱり目の敵なのかな?
- 2011年3月30日能登半島九十九湾のアジ_1.jpeg http://flic.kr/p/9H57xe
- aji36-20110330_8.jpg http://flic.kr/p/9H7TtG
- Flickrの写真をTwitterにポストする「Flickr2Twitter」を使ったスクリプト http://wp.me/p1ge0B-4C
- 20110508-小木港_10.jpeg http://flic.kr/p/9H7hiq
- 20110508-小木港_11.jpeg http://flic.kr/p/9H7eGN
- viを使い倒そう: 少し進んだ使い方(3) -マークを用いた編集作業- (4th Step) http://ow.ly/4TMAj すぐに忘れてしまい度々調べなおします。長文のコピペや削除の際に便利かと思います。
- Twitterのつぶやきをブログ上で再現してくれるWordPressプラグイン「Blackbird Pie」がすんごい便利 http://ow.ly/4TM3q タグ使わなくてもURLだけでOKみたい。編集を開いてみるとPHPのコードだけ表示されました。設定メニューはないみたい。
- [ご案内(2011-05-13 20:06:02) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
- reverse insert http://ow.ly/4TJ4K 必要性を考えるのも難しい機能ですが、入力した文字が逆に。なんでもありのVimという感じ。こんな感じです。→ >。すでい願おくしろよ
- 変数に格納された文字数 http://ow.ly/4TISL これは知らなかったです。日本語が混じっていても文字の数が合っているみたいでした。
- Flickrの写真をTwitterにポストする「Flickr2Twitter」 http://ow.ly/4TH7k コマンドラインから投稿できました。[uuencode 添付ファイルのパス 添付ファイル名|mail -s 件名 登録メールアドレス]件名は要日本語処理のはずです
- test mail http://flic.kr/p/9H54JG
- icoro : Ubuntu 9.04 Server – Postfixの設定 http://ow.ly/4TGV3 Ubuntu 10.10からUbuntu 11.04へは、設定ファイルのコピーとpostmapの実行で使えるようになりました。
- 魚料理と簡単レシピ – 鮟鱇(あんこう)鍋 作り方とレシピ http://ow.ly/4TG0K 今度アンコウを食べてみようかと思っています。宇出津のスーパーで宇出津港産のが398円ほどでパックに入って売っています。余り売れないのか置いてある数は少ないみたいです。
- [ご案内(2011-05-13 16:06:01) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
- アクセラと+αな生活 : Ubuntu 10.04 で Nautilus-actions を使ってみる。 – Mozilla Firefox http://ow.ly/4TCXv Ubuntu 11.04ではけっこう違いがあるようです。引数に指定するファイル名も%Uみたいでした。
- [N] Flickrの写真をTwitterにポストする「Flickr2Twitter」 http://ow.ly/4TC7u 使ってみました。
- Flickr2Twitterのテストです http://flic.kr/p/9GZgxe
- UNIXとプログラムとゲーム » Blog Archive » mapae あっぱれ (Emacsで ブログを書く) http://ow.ly/4TBx0 残念ながらxmlrpc.phpのコードが全然違っていました。投稿は出来るけど、編集後の再投稿は出来ないです。
- [ご案内(2011-05-13 12:06:01) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
- 告発/再審請求 http://ow.ly/4TyIi レンタルサーバに設置したWordPressです。大幅リニューアルするか、別に作り直すか思案中です。
- 記事の一覧リスト | 告発/再審請求 http://ow.ly/4TyC4 やはりWordPressのブログをメインに使おうかと考えています。このような記事の一覧もPHPのコードで表示できるので、全体像も把握しやすいと思います。
- 悪い結果が出たとたんに部下が悪いと言い出す上司がいる。俺は知らないとか、部下の報告が悪くて判断を誤ったとかね。とにかく自分は悪くない。
- 【弁護士あるある】尋問期日で、目を閉じているように見える裁判官が、まさか寝ているのではないかと疑って、その様子を観察する。
- 右クリックで画像のサイズを変更する nautilus-image-converter 0.0.9 | LiberOS | Viva! Ubuntu!! http://wp.me/p1ge0B-4z
- [ご案内(2011-05-13 08:06:01) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
- hirono_hidekiのツイート_2011-05-12 http://wp.me/p1ge0B-4y
- [ご案内(2011-05-13 04:06:02) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
- UNIXとプログラムとゲーム » Blog Archive » mapae あっぱれ (Emacsで ブログを書く) http://ow.ly/4Te7X こちらを参考に直接公開できるようになりましたが、レンタルサーバと異なり直接xmlrpc.phpの編集は出来ないです。
- 『2011年05月12日のつぶやき』MakeMyDay|http://hirono-hideki-blog.seesaa.net/article/200745148.html
- [ご案内(2011-05-13 00:06:03) ]再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。順次更新します。 http://kokuhatu-hirono.seesaa.net/ 宜しくです!!
Powered by t2b
ヒアドキュメントによる複数行文字列の作成 – 文字列 – Ruby入門
また「print」メソッドなどの引数に指定する場合は次のような記述方法となります。
また「print」メソッドなどの引数に指定する場合は次のような記述方法となります。
print(<<"EOS")
こんにちは
お元気ですか
ではさようなら
EOS
引用元: ヒアドキュメントによる複数行文字列の作成 – 文字列 – Ruby入門.
これは知らなかったです。初めての発見ですが、気になることはありました。ヒアドキュメントが使えなかったら”とかの処理に困るのです。特にHTMLは”が多いです。
LinuxとRubyでのクリップボード操作
CUIでクリップボードを操作する「Clipboard」 – MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ.
前にも何度か調べたことがあったのですが、「Ruby クリップボード Linux」などと検索をしても見つかるのはWindows環境のものばかりでした。地道に探せばあるに違いないとは思っていましたが、このページが解決のきっかけになりました。
git clone http://github.com/janlelis/clipboard
でダウンロードをしても中身は
CHANGELOG.rdoc Gemfile.lock README.rdoc VERSION doc spec
Gemfile LICENSE Rakefile clipboard.gemspec lib
な状態で、README.rdocをみると、
=== Non-gem requirements
* *Linux*: +xclip+, you can install it on debian/ubuntu with sudo apt-get install xclip
なことが書いてありました。別のソフトをすすめているようにも読めました。
require ‘clipboard’とあるぐらいだからgemにあるだろうと見当を付け、
sudo gem install clipboard
とやると、めでたくインストールできました。
なんかこの3つしか使い道はないみたいですが、これでも十分です。
=== Usage
You have Clipboard.copy,
Clipboard.paste and
Clipboard.clear
xclipというのもインストールしてみたのですが、ネットで調べても情報は少ないみたいでした。
http://d.hatena.ne.jp/aki-yam/20080705/1215209992
によると、
echo -n `pwd` | xclip -i -selection clipboard
という使い方をするみたいです。試すと使えました。
もともと自分は数年前からコマンドラインのクリップボード操作にはxselを使っていました。
pwd | xsel -b
同様のことはこれで出来ますが、よりシンプルです。これも情報の少ないコマンドでしたが、割と機能が多いです。manコマンドで見てもけっこうオプションの数があります。
Rubyで外部プログラムの呼び出しに変数を使う
Rubyで外部プログラムの呼び出しに変数を使う – 睡眠不足?!.
irb(main):043:0* $filename=”12665.tmp”
=> “12665.tmp”
irb(main):044:0> `xsel -b “再審請求の専用ブログ、そのまま金沢地方裁判所提出資料です。”
irb(main):045:0> `cat #$filename`
=> “xxxxx\nyyyyy\n”
という感じでirbでやってみたのですが、Rubyのコマンド置換演算子でシェルを呼び出してもリダイレクトは使えないみたいです。