0
假设下面的简单脚本:防止记录
#!/bin/bash
log="${HOME}/bin/test.log"
if [ -r "${log}" ]; then
rm -f "${log}"
fi
{
echo "Start of test"
clear
echo "End of test"
} 2>&1 | tee -a "${log}"
生成的日志文件的内容如下所示:
Start of test
<unprintable>[H<unprintable>[2JEnd of test
有什么办法避免多余的字符导致从使用这种记录方式发出明确命令?
这很好,但有一个奇怪的副作用,其中诸如echo“Only in log”>>“$ {log}”之类的语句对日志没有影响。任何解决方案? – Frostfyre
你可能会对运用'>>'和'sed'命令有一些好运,但通常这可能不起作用,因为你现在有两个独立的进程(脚本和'sed')编写同一个文件,并且写入将被任意交错。 – chepner
我每次使用clear命令时都使用sed清除日志中的字符,但感谢您的帮助。 – Frostfyre