JavaScriptで便利な関数の代表例といえば、escape/unescape, encodeURI/decodeURI, encodeURIComponent/decodeURICompontのペアじゃないでしょうか?
PHPからやるには、 rawurlencode => encodeURIComponent
Ruby からやるには、URI.encode_www_form_component => encodeURIComponent
がそれぞれ、対応する関数になります。
コマンドでencodeURIComponent
node.js があるじゃないか
#!/usr/bin/env node path = require('path'); str = process.argv[2]; name = process.argv[1]; name = path.basename(name) ; console.log(global[name](str));
つくった。これで、コマンドで引数のファイル名として呼べる。なので
takuya@air:~/Desktop$ encodeURIComponent http://takuya-1st.hatenablog.jp/ | pbcopy
で簡単になっています
しかも他の関数もコピーするだけ
ファイル名を関数名にマッピングしたので。
cd /usr/local/bin/ ln -s ./encodeURIComponent ./decodeURIComponent ln -s ./encodeURIComponent ./decodeURI ln -s ./encodeURIComponent ./escape
などと別の関数もコマンドで使えるようになって便利になりました。
コマンドさえあれば他に何もいらないよね。