tsun2012 发表于 2012-01-17 11:17

tail -f 产生的占位符的问题,急求解决,谢谢!

# 监控a.log 并写入b.log
tail -f a.log > b.log

#第一次
# 清空b.log
> b.log
# 往a.log写入内容
echo "123" >> a.log


#第二次
# 清空b.log
> b.log
# 往a.log写入内容
echo "123" >> a.log

第二次、第三次 往a.log写入内容后,此时得到的b.log文件开头有特殊字符,问怎么清除这些特殊字符,又不影响tail -f?
如果删除文件b.log,或者删除第一行,sed -i '1d' b.log,都会影响tail -f的。

我debug了一下,发现 这些特殊字符的个数,是和先前输入的字符的个数是相等的,怀疑,在tail -f监控的情况下,用重定向>清空时,只清空了里面的内容,而占位符并没有清空。
也尝试了 echo "" > b.log
cat /dev/null > b.log
还是不行。

请高手,给予解释,和解决的方法,多谢多谢!

hanzhenlll 发表于 2012-01-18 11:18

描述个破问题都描述不清楚。。。看着真累:Q

sakulagi 发表于 2012-11-19 11:18

你说的特殊字符具体是什么字符?我在CentOS 6.3上试验了。没发现你说的的问题。
页: [1]
查看完整版本: tail -f 产生的占位符的问题,急求解决,谢谢!