vim で コピーしたコード貼りつけすると、インデントが崩れる
vim でコピペしたコードをペーストすると、インデントが崩壊することがある。
以下は「AMIやスナップショットを AWS CLI で一気に削除する」で使用したシェルスクリプトの例だが、
sakujo_AMI.sh
#!/bin/bash
# 設定ファイル
ami_list=sakujo_AMI_list.txt
# 日付時刻を文字列にする
jikan=`date +"%Y-%m%d-%H%M-%S"`
# profile
profile_name=<設定したプロファイル名>
# 意図したIAMユーザか確認
aws sts get-caller-identity --profile $profile_name
while read row
do
echo ":::::::::::::::::::::::::::delete this ami ${row}" >> log/ami_all_log_$jikan.txt 2>&1
aws ec2 deregister-image --image-id ${row} --profile $profile_name >> log/ami_all_log_$jikan.txt 2>&1
if [ $? -ne 0 ]; then
echo ${row} >> log/ami_error_${jikan}.txt
else
echo ${row} >> log/ami_ok_${jikan}.txt
fi
echo ":::::::::::::::::::::::::::end" >> log/ami_all_log_$jikan.txt 2>&1
sleep 3
done < ${ami_list}
これをコピーし Vim で貼りつけすると、以下のようにインデントが崩れてしまう。
:set paste
でインデント崩れしないで貼りつける
ノーマルモードから:set paste
で貼りつけモードにすることで、インデント崩れしないで貼り付けできる。
i
をクリックして編集モードに移行する。
参考