我正在学习bash,我认为在一个文件中有一个包含我所做的所有操作的日志(log)会很好(就像script
命令所做的那样).但我希望创建自己的bash脚本,而不是使用script
.所以我写了这样的话:
rm file; tee -a file | bash 2>&1 | tee -a file
它的工作很好,但我想记录bash默认提示也.我在man bash
中找到了-i
选项,并更改了脚本
(我必须在这里使用rm
和tee -a
命令,而不是只使用tee
命令,因为它创建了一个奇怪的移位输出.所以我 Select 了简单的方法):
rm file; tee -a file | bash -i 2>&1 | tee -a file
但这不管用!它只执行和保存一个命令.有没有办法修复它(并了解它的原因)?
第一个脚本后cat file
的输出示例:
echo 1
1
echo 2
2
请注意,情况并非如此.
user@host:~$ echo 1
1
user@host:~$ echo 2
2