Bagaimana cara menghapus baris duplikat di setiap file dalam direktori dan menyimpan data tetap dalam file yang sama dengan satu perintah baris?

Berikut ini tidak berfungsi:

   find . -type f -execdir cat {} | sort | uniq > {} \; 

   find . -type f | xargs -I{} cat {} | sort | uniq > {}

   find . -type f | xargs -I{} cat {} | sort | uniq > {}.new && mv {}.new {}

Simbol '>' memutuskan rantai ..

0
sten 27 Mei 2021, 00:55

1 menjawab

Jawaban Terbaik

Letakkan pembungkus Shell di exec:

find . -type f -exec sh -c 'sort "$1" | uniq > "$1.new" && mv "$1.new" "$1"' _ {} \;
1
William Pursell 26 Mei 2021, 22:22