![将控制字符应用于文件 reddirect](https://linux22.com/image/216418/%E5%B0%86%E6%8E%A7%E5%88%B6%E5%AD%97%E7%AC%A6%E5%BA%94%E7%94%A8%E4%BA%8E%E6%96%87%E4%BB%B6%20reddirect.png)
尝试了各种现有的答案,但没有找到完全有效的答案。这是一行示例,并显示它是如何失败的,也许一些额外的开关或步骤可以解决这个问题?
这是我尝试保存到 txt 文件的文件内容,并在写入磁盘之前应用了控制字符:fooo^H^H^H^Hbarr^H^H^H^H ^H^H^H^Hok
到目前为止找到的最好的工具是,col -b
但这里是失败的例子。我已经尝试过了:cat mem.txt | col -b > mem2.txt
但结果是okrr
我不知道为什么它会忽略应该清理的 4 个空格barr
,但它确实如此。
源问题是我试图将干净的日志从/usr/bin/time -f'%E' sudo memtester 2M 1
磁盘上的文件重定向,但我无法从进度打印中清除垃圾。这只是一个给我带来这个问题的程序,我还有几个程序,所以如果这个程序有某种模式不打印进度,它可能无法解决我的头痛。
编辑这个sed适用于memtester
情况,但不适用于一般情况,所以目前最好的解决方案是:
| sed -re ':b; s,[^\x08]\x08,,g; tb' | col -b >