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文件中转。不然就是自己用编程语言实现。
不用中间文件,一边读一边写,就把后面的数据冲掉了。