如何简化一下shell文件处理过程

 cd \txt
filelist=`ls`
for file in $filelist
do
    >temp.txt
    echo $file
    cat $file | uniq >> temp.txt
    >$file
    cat temp.txt >> $file
done

如上面代码所示:功能需求是将该目录下所有文件进行cat uniq操作之后保存回该文件,我使用了temp.txt,不知道有没有可以直接写回文件的命令?请指导!

uniq的man page中有说明,不能是同一个文件。

你用uniq指令,只能用temp文件中转。不然就是自己用编程语言实现。

不用中间文件,一边读一边写,就把后面的数据冲掉了。