Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

cutとrevの組み合わせでURLの最後の要素だけ引っ張り出す

revは*NIX標準添付の、文字列をひっくり返すコマンドです

~$ echo http://s3.amazonaws.com/downloads.basho.com/stanchion/1.5/1.5.0/osx/10.8/stanchion-1.5.0-OSX-x86_64.tar.gz | rev

が、

zg.rat.46_68x-XSO-0.5.1-noihcnats/8.01/xso/0.5.1/5.1/noihcnats/moc.ohsab.sdaolnwod/moc.swanozama.3s//:ptth

となります。

ぶっちゃけ、使いどころないんじゃない?
などとタカをくくっていましたが、これとcutを使うとちょっと面白いことができます。

一度ひっくり返してcutで最初の要素(=元の文字列でいう最後の要素)を摘出、またひっくり返します。

$ echo http://s3.amazonaws.com/downloads.basho.com/stanchion/1.5/1.5.0/osx/10.8/stanchion-1.5.0-OSX-x86_64.tar.gz | rev | cut -d '/' -f1 | rev

すると、

stanchion-1.5.0-OSX-x86_64.tar.gz

と、お目当てのファイル名をゲットできます。
標準装備のコマンドだけで実行できるので、環境さえ同じなら再現性も高いです。

Grepつかえという声も聞こえてきますが、こっちのほうが素直に頭に入ってくるので好きです

追記

とか何とか言ってましたが結局書いちゃいました
shuzo-kino.hateblo.jp