Uniq许多文件到位

时间:2012-07-25 05:00:03

标签: bash unix

我有很多*.dat个文件。什么是bash脚本可以删除每个中的重复相邻行?

2 个答案:

答案 0 :(得分:6)

你的意思是这样吗?

#!/bin/bash
for f in "$@"
do
   cp "$f" /tmp/tmp.dat
   uniq /tmp/tmp.dat > "$f"
done

您可以在包含许多* .dat文件的目录中运行。如果将其放在名为uniq_dat的脚本中,并使其可执行,则可以像以下一样运行它:

uniq_dat *.dat

答案 1 :(得分:0)

使用排序!

sort -u foo -o foo
# is short for
sort --unique foo -o foo

# if you want to avoid sorting
sort —merge —unique foo -o foo