1. 程式人生 > >awk刪除重復文件

awk刪除重復文件

move $2 文件 echo long ech sort -u bsp get

#!/bin/bash

#查找並刪除重復文件,每個文件只保留1份

ls -LS --time-style=long-iso | awk ‘BEGIN {

getline; getline;

name1=$8; size=$5

}

{

name2=$8

if(size==$5)

{

"md5sum "name1| getline;csum1=$1;

"md5sum "name2 | getline; csum2=$1;

if ( csum1==csum2 )

{

print name1; print name2

}

};

size=$5;name1=name2;

}‘ | sort -u > duplicate_files

cat duplicate_files | xargs -I {} md5sum {} | \

sort | uniq -w 32 | awk ‘{ print $2 }‘ | \

sort -u > unique_files

echo Removing..

comm duplicate_files unique_files -3 | tee /dev/stderr | \

xargs rm

echo Removed duplicates files successfully.

腳本執行: bash 文件

chmod 755 文件

$ ./文件

awk刪除重復文件