次のような名前の詳細を持つファイルがたくさんあります。
2007-07-22-2300-11S.NAN___024_ABI___HH_E_SAC
どこ:
2007-07-22
日付です。2300-11S
うーん。NAN___024
ネットワークが各ファイルに対して同じかどうか(新しい名前には不要)ABI__HH_E
東チャンネルの駅名です。SAC
拡張です。
また、すべてのファイルの名前を同じ形式に変更したいと思います。
2007.204.23.00.ABI.e
どこ:
2007
今年です。204
ユリウスデー(07-22)です。23.00
時が来た。ABI
駅です。e
チャンネル名です。
ベストアンサー1
次のように仮定してください。
- 場所2に「1+序数日付」を使用したい。
- 駅名は「_」で埋められます。
- チャンネル名小文字
これで必要な変換が行われます。
$ ls
2007-07-22-2300-11S.NAN___024_ABI___HH_E_SAC
$ for i in *; do
od="$(expr $(date +%j -d "${i:0:10}") + 1 )";
chn="${i:39:1}";
sta="$(echo ${i:30:6} | tr -d '_')";
mv "$i" "${i:0:4}.$od.${i:11:2}.${i:13:2}.$sta.${chn,,}" ;
done
$ ls
2007.204.23.00.ABI.e