【linux操作基礎】多目錄文件復制且同名不覆蓋
前言
最近整理不同gt文件計算類別權重,發現整合后的gt文件數量變少,原因是不同目錄中文件有同名的,發生覆蓋,故記錄之;
相關腳本:
腳本1:同名不覆蓋復制文件
# 同名不覆蓋復制文件 #!/bin/bash # 源目錄 source_dir="./train/" # 目標目錄 destination_dir="./gtrain/" # 創建目標目錄(如果不存在) mkdir -p "$destination_dir" find "$source_dir" -type f -name "*.png" | while read -r file; do filename=$(basename "$file") target_file="$destination_dir/$filename" counter=1 while [ -e "$target_file" ]; do base_name="${filename%.*}" extension="${filename##*.}" target_file="$destination_dir/${base_name}_${counter}.${extension}" counter=$((counter + 1)) done cp "$file" "$target_file" echo "Copied $file to $target_file" done
腳本2:多目錄下文件按照一定規則重命名
#!/bin/bash dirs_img=" /media/485E234682AE9EFD/01_dataset/APA/anno_image/data/yuyan_multitask_batch12_1434_20250311_700_img /media/485E234682AE9EFD/01_dataset/APA/anno_image/data/yuyan_multitask_batch12_1434_20250311_734_img " for dir in $dirs_img; do echo $dir for file in $dir/*.png; do # echo $file # 檢查是否是文件 if [[ -f $file ]]; then # 重命名文件,添加后綴 # mv "$file" "${file}${suffix}" suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_leftImg8bit\2/g'` # suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_gtFine_labelIds\2/g'` # suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_gtFine_labelIds\2/g'` mv $file $suffix fi done done dirs_gt=" /media/485E234682AE9EFD/01_dataset/APA/anno_image/data/yuyan_multitask_batch12_1434_20250311_700_gt /media/485E234682AE9EFD/01_dataset/APA/anno_image/data/yuyan_multitask_batch12_1434_20250311_734_gt " for dir in $dirs_gt; do echo $dir for file in $dir/*.png; do # echo $file # 檢查是否是文件 if [[ -f $file ]]; then # 重命名文件,添加后綴 # mv "$file" "${file}${suffix}" # suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_leftImg8bit\2/g'` suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_gtFine_labelIds\2/g'` # suffix=`echo $file|sed -r 's/(.*)(\..*)/\1_gtFine_labelIds\2/g'` mv $file $suffix fi done done
腳本3:文件名稱太長,將名稱批量化寫入txt文件
# 文件名稱太長,將名稱批量化寫入txt文件 find gt/ -type f -printf "%f\n" > gt.txt
END
各美其美,美美與共,不和他人作比較,不對他人有期待,不批判他人,不鉆牛角尖。
心正意誠,做自己該做的事情,做自己喜歡做的事情,安靜做一枚有思想的技術媛。
版權聲明,轉載請注明出處:http://www.rzrgm.cn/happyamyhope/
心正意誠,做自己該做的事情,做自己喜歡做的事情,安靜做一枚有思想的技術媛。
版權聲明,轉載請注明出處:http://www.rzrgm.cn/happyamyhope/
浙公網安備 33010602011771號