私は取りたい/home/deploy/releases/20120821203354
そして戻る:
2012-08-21 20:33
基本的には後のものを取り、'releases/'
数字の位置に基づいて分割します。
背景:OS X 10.7; bashスクリプトで使用されます。
/恥ずかしい
はい、どうぞ。
a=/home/deploy/releases/20120821203354
b=${a#/home/deploy/releases/}
c="${b:0:4}-${b:4:2}-${b:6:2} ${b:8:2}:${b:10:2}"
シェルパラメータの拡張がすべてです
OSXのbashでは、date
FreeBSDの場合と同じようにコマンドを使用できます。
$ text="/home/deploy/releases/20120821203354"
$ date -j -f "%Y%m%d%H%M%S" "${text##*/}" '+%Y-%m-%d %H:%M'
2012-08-21 20:33
BSDオペレーティングシステムのオプションはdate
、Linuxの場合とは異なることに注意してください。
これをニーズに適合させることができるはずです。
echo " /home/deploy/releases/20120821203354" | awk -F/ '{print $5}' | awk '{print substr($0,0,4)"-"substr($0,5,2)"-"substr($0,7,2)" "substr($0,9,2)":"substr($0,11,2)}'