私の引数は次のとおりです。My_Submit.sh May5_2014
引数からインスピレーションを受けて新しい変数を生成したいと思います。この変数は次のようになりますMay14_5
。
ベストアンサー1
そしてzsh
:
#! /bin/zsh -
set -o extendedglob
zmodload zsh/langinfo
date=${1?date not specified}
if
[[ $date = (#b)(${(vj[|])~langinfo[(I)ABMON_<1-12>]})(<1-31>)_20([0-9][0-9]) ]]
then
newdate=$match[1]$match[3]_$match[2]
else
print -ru2 -- $date is not in the right format
exit 1
fi
print -r New date is $newdate.
これは、ロケールデータから略語リストを取得するモジュールによって行われますzsh/langinfo
。ユーザーのロケールに関係なく、略語が英語の略語である必要がある場合は、${(vj[|])~langinfo[(I)ABMON_<1-12>]}
に変更しますJan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
。