如果命令有任何输出,我想在命令后打印一个新行(我希望一旦我的终端开始滚动,这将使其更具可读性)。
我找到了这个:
precmd() {
precmd() {
print ""
}
}
这是可行的,但显然会在每个命令之后打印行。
还有这个:
precmd () {
exec 2>&- >&-
lastline=$(tail -1 ~/.command.out)
sleep 0.1
exec > /dev/tty 2>&1
}
preexec() {
exec > >(tee ~/.command.out&)
}
并尝试修改它,但即使没有我的修改,它也会“破坏”输出(并使 vim 无法使用)。
答案1
您正在寻找类似的东西吗?该脚本将运行第一个参数,如果命令在标准输出上输出任何内容,它也会打印换行符
#!/bin/bash
if [[ $($1 | tee /dev/tty) ]]; then
echo
fi