我知道“清除”当前屏幕的清除命令,但它只是通过打印大量换行来做到这一点-清除的内容只是向上滚动。
是否有一种方法可以完全擦除终端之前的所有输出,以至于我即使向上滚动也无法到达它?
我知道“清除”当前屏幕的清除命令,但它只是通过打印大量换行来做到这一点-清除的内容只是向上滚动。
是否有一种方法可以完全擦除终端之前的所有输出,以至于我即使向上滚动也无法到达它?
当前回答
CMD + K适用于macOS。它清除整个终端输出,但环境仍然存在。
其他回答
将以下内容添加到配置文件中将获得执行此操作的新命令。
alias clearwipe='printf "\33c\e[3J"'
重新加载后,clearwipe将是一个新命令,它将完全擦除终端上的所有先前输出,这样即使向上滚动也无法到达它。
把它放在你的.bash_profile或.bashrc文件中:
function cls {
osascript -e 'tell application "System Events" to keystroke "k" using command down'
}
Command + K将清除之前的输出。
要清除输入的文本,首先用Command + A跳转到左边,然后用Control + K清除指针右边的文本。
可视化例子:
漂亮的方法是printf '\33c\e[3J'
在终端中输入以下内容将删除你的历史记录(这意味着使用向上箭头将一无所获),但它不会清除屏幕:
history -c