次のファイルがたくさんあります。
2007.365.00.00.00.0000.9A.CVSV4..HHZ.D.SAC.GAP.decim10.GAP
結局私が望むのはこれです。
2007.365.00.00.CVSV4.HHZ.SAC
私はこれを試しました:
for file in /home/joana/Desktop/*GAP; do
mv "$file" `echo "$file" | sed -e 's/00.0000.9A.//' -e 's/.D//' -e 's/.GAP.decim10.GAP//'`;
done
知っている、私は理解します:
mv: cannot move ‘/home/joana/Desktop/2007.365.00.00.00.0000.9A.CVSV4..HHZ.D.SAC.GAP.decim10.GAP’ to ‘/home/joanaesktop/2007.365.00.00.CVSV4..HHZ.D.SAC’: No such file or directory
誰でも私を助けることができますか?多くの例を見ましたが、おそらく何かが間違っているようです。
答え1
出力に満足したら、エコーを削除してください(mvより前)。
for file in *GAP
do
NEW_FILE=$(echo ${file} | awk -F. '{print $1,$2,$3,$4,$8,$10,$12}' OFS=.)
echo mv ${file} ${NEW_FILE}
done