【Windows】クリップボードに現在時刻をコピーするスクリプト【.exe付き】
ruby -Ks -e "require 'rubygems';require 'win32/clipboard';Win32::Clipboard.set_data(Time.now.strftime('%Y%m%d%H%M%S'))"
ただし準備が必要。
※以降は ActiveScriptRuby 1.8.7 の使用を前提とします。
※別バージョンが入っていても、ASRをインストールするとデスクトップにできる「ruby console」を実行して出るプロンプトから操作すればたぶんOKです。
準備: Win32Utils軍の一ライブラリ、「win32/clipboard」をインストール
後から標準ライブラリの場所に移すとしても、とりあえずgemでインストールすると楽です。
gem install win32-clipboard
そして実行。(リファクタリングして再掲)
#!ruby -Ks require 'rubygems' #gemを使用する場合のみ require 'win32/clipboard' now_strftime = Time.now.strftime('%Y%m%d%H%M%S') Win32::Clipboard.set_data(now_strftime)"
クリップボードに、現在時刻の文字列がstrftimeで指定したフォーマットで格納されます。
そしてexe化。(Exerb使用)
# レシピファイル生成 > mkexy timeclip.rb # 実行ファイル作成 > exerb timeclip.exy
お待ちかねの実行ファイルができました。
http://myokoym.net/file/timeclip.zip
おまけ・gemからライブラリ部分を抽出するスクリプト(例)
~\lib\ruby\gems\1.8\gems>ruby -r fileutils -e "Dir.glob('**/*'){|fn|next unless File.directory?(fn);FileUtils::Verbose.cp_r(fn, '.') if /lib\/(win32|windows)\z/ =~ fn}"
■参考
Rubyist Magazine - Ruby Library Report 【第 4 回】 Win32Utils
http://jp.rubyist.net/magazine/?0005-RLR
Exerb Project
http://exerb.sourceforge.jp/
Exerb - チュートリアル
http://exerb.sourceforge.jp/man/doc/tutorial.ja.html