清除python控制台命令历史记录



我在mac上使用anaconda,我想知道是否有办法清除我的python命令历史记录。具体来说,在终端中调用python时,我想清除之前在这里键入的任何内容。

假设您想清除Python在按下上下箭头键时所经历的命令历史记录,则该历史记录由GNU readline库或libedit管理,具体取决于您的系统。Pythonreadline模块是底层库的Python级接口(即使该库是libedit(,在底层库支持它的系统上,您可以使用readline.clear_history:清除历史记录

>>> import readline
>>> readline.clear_history()

我不知道你的Mac上的库是否支持它。

如果您的系统不使用readline,要删除所有Python命令历史记录,只需删除~/.python_history处的历史文件即可。

您可以使用以下内容查看历史文件的完整路径:

python -c "import os; print(os.path.join(os.path.expanduser('~'), '.python_history'))"

在Windows上,历史文件位于%userprofile%.python_history(例如'C:Users<user>.python_history'(。

如果你在Windows上,没有发现任何东西可以帮助你清除终端的存储命令历史记录,这就是我的帮助:

定位并删除:%userprofile%AppDataRoamingMicrosoftWindowsPowerShellPSReadlineConsoleHost_history. txt

这将删除您的整个终端历史记录。

转义序列?

print(chr(27) + "[2J")

或者

import os
os.system('cls' if os.name == 'nt' else 'clear')

您可以使用标准库子流程模块中的subprocess.call((向终端发送重置命令,该命令将重新初始化终端,并执行类似于清除但也清除滚动历史的操作。

import subprocess
subprocess.call('reset')
import os
os.system('cls')

这将只清除此交互式会话中的python历史记录,而不会清除以前的历史记录。

如果您使用的是Linux,那么:

Import os  
os.system('clear')  

如果您使用的是Windows:

Import os   
os.system('CLS')

最新更新