コマンドラインからWeb検索
コマンドを実行して、エラーが出たときとかWebで検索することが多い。コマンドラインから直接Web検索ができると便利なんじゃないかと思い、searchというシェル関数を作ることにした。
使い方
$ search "firefox chrome opera" 0 : bing.com 1 : google.co.jp 2 : goo dictionary(all) 3 : eijiro 4 : google translation 5 : excite translation 6 : wikipedia(jp) 7 : wikipedia(en) select number:
コマンドラインからsearchを調べたい文字列付きで実行すると番号が聞かれる。番号を選択するとブラウザを開いて検索する。
screenのコピーモードと併用すると、マウスを使わずに検索文字列を貼り付けられるから便利。
ソース
function search() { encoded=$(perl -MURI::Escape -e 'print uri_escape(shift)' "$1") echo "0 : bing.com" echo "1 : google.co.jp" echo "2 : goo dictionary(all)" echo "3 : eijiro" echo "4 : google translation" echo "5 : excite translation" echo "6 : wikipedia(jp)" echo "7 : wikipedia(en)" echo -n "select number: " read number case "$number" in 0) firefox -new-tab 'http://www.bing.com/search?q='$encoded & ;; 1) firefox -new-tab 'http://www.google.co.jp/search?q='$encoded'&hl=ja&ie=UTF_8&lr=lang_ja' & ;; 2) firefox -new-tab 'http://dictionary.goo.ne.jp/srch/all/'$encoded'/m0e/' & ;; 3) firefox -new-tab 'http://eow.alc.co.jp/'$encoded'/UTF-8/' & ;; 4) firefox -new-tab 'http://translate.google.com/translate_t?hl=ja&langpair=en%7Cja&text='$encoded & ;; 5) firefox -new-tab 'http://www.excite.co.jp/world/english/?before='$encoded'&wb_lp=ENJA' & ;; 6) firefox -new-tab 'http://ja.wikipedia.org/wiki/'$encoded & ;; 7) firefox -new-tab 'http://en.wikipedia.org/wiki/'$encoded & ;; *) echo "Unknown number $number" >&2 ;; esac > /dev/null }