我知道“清除”当前屏幕的清除命令,但它只是通过打印大量换行来做到这一点-清除的内容只是向上滚动。

是否有一种方法可以完全擦除终端之前的所有输出,以至于我即使向上滚动也无法到达它?


当前回答

Command + K将清除之前的输出。

要清除输入的文本,首先用Command + A跳转到左边,然后用Control + K清除指针右边的文本。

可视化例子:

其他回答

或者您可以通过按Ctrl + L发送换行符(ASCII表单提要)。

虽然从技术上讲,这只是启动一个新页面,但这与所有其他方法具有相同的净效果,同时速度要快得多(当然,Apple + K解决方案除外)。

因为这是一个ASCII控制命令,它适用于所有shell。

在终端中输入以下内容将删除你的历史记录(这意味着使用向上箭头将一无所获),但它不会清除屏幕:

history -c

将以下内容添加到配置文件中将获得执行此操作的新命令。

alias clearwipe='printf "\33c\e[3J"'

重新加载后,clearwipe将是一个新命令,它将完全擦除终端上的所有先前输出,这样即使向上滚动也无法到达它。

手动清除终端。

⌘+K

Command+K用于较新的键盘

从shell脚本中清除终端;

/usr/bin/osascript -e 'tell application "System Events" to tell process "Terminal" to keystroke "k" using command down'

在Mac OS X v10.10 (Yosemite)中,使用Option + Command + K清除Terminal.app中的屏幕。