我在修改fswatch
时使用refreshed.txt
刷新watched.txt
。目前,something
附加了refreshed.txt
。
fswatch -o watched.txt | xargs -n1 sh -c "echo 'something' >> refreshed.txt"
但是,我想写something
然后将其删除。
我试过了:
fswatch -o watched.txt | xargs -n1 sh -c "echo 'something\b\b' >> refreshed.txt"
和
fswatch -o watched.txt | xargs -n1 sh -c "echo 'something' >> refreshed.txt && sed -ie '$d' refreshed.txt"
但似乎都没有达到预期的效果。
答案 0 :(得分:1)
sed未运行,因为当您将"
引用的脚本提供给sh
时,$ d将替换为空字符串:
sed -ie '' refreshed.txt.
你应该逃避$
,以避免:
sed -ie '\$d' refreshed.txt
请注意,添加一行然后立即将其删除, 几乎就是简单地更新它的修改时间戳,所以你可能想让它睡一会儿,让变化检测系统能够流行起来。