标签: command-history

bash_history 何时以及如何附加到?

据我所知,单个 shell 的历史记录仅在 shell 关闭时附加到 .bash_history 文件中。这意味着我经常在崩溃/内核崩溃时丢失单个 shell 的历史记录。

为什么历史记录只在关闭会话时写入?有没有办法在执行时写入每个命令?有什么理由我不希望在执行时写入每个命令(例如,写入一个巨大的 bash_history 文件时的性能问题)?

(我正在使用 Mac OS X 10.6 并使用 iTerm 同时运行许多选项卡式终端。我设置了 histappend 以及其他一些选项。

export HISTSIZE=1000000
export HISTTIMEFORMAT="%d/%m/%y %T "
shopt -s histappend
Run Code Online (Sandbox Code Playgroud)

)

bash command-history

6
推荐指数
1
解决办法
3794
查看次数

如何在 zsh 中拥有无限的历史记录?

我想要一个无限的历史文件zsh。据我所知,我只能将 HISTSIZE 和 SAVEHIST 设置为一个大数字。

zsh command-history

6
推荐指数
1
解决办法
1577
查看次数

Notepad ++ 撤消历史记录

我似乎无法在 Notepad++ 中找到显示您所做的所有操作的历史记录。有时您可能不再确定下一个撤消操作会做什么。

这个功能真的不存在还是我还没找到?

notepad++ undo command-history

5
推荐指数
1
解决办法
7110
查看次数

为什么你不能 sudo 历史?

如果我想查看 root 的 bash 历史记录,为什么我不能直接运行sudo history?当我这样做时,它说找不到命令历史记录,但是如果我在没有 sudo 的情况下运行它,它运行良好。

编辑:这是一个重复的答案,但不是链接的重复问题。提出任何一个问题的人都不知道它是一个 shell 内置命令,而不是一个二进制命令。

linux sudo bash history command-history

5
推荐指数
1
解决办法
4681
查看次数

使 zsh 历史搜索的行为类似于 bash reverse-i-search

  • bash中,按[CTRL]+[r]将打开reverse-i-search提示符。
  • 如何以类似的方式搜索 zsh 历史记录?

注意:搜索查询将仅命中完整命令的中间,而不是正常 zsh 搜索所需的开头匹配。

search bash zsh command-history

5
推荐指数
1
解决办法
4756
查看次数

Powershell 历史记录不再持久

Powershell 停止使用其持久历史记录 (Windows 11)。当我启动新的 Powershell 实例时,以前会话中的命令不会显示。一旦我第一次在新会话中使用命令,就可以通过 F8/箭头等来调用它们。

到目前为止我检查/发现的内容:

  • 检查历史文件,C:\Users\[username]\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt我注意到命令不再保存在那里。

  • 一旦我输入命令(Get-PSReadLineOption).HistorySavePath(它返回我在上一个要点中提到的路径),一切都会再次正常工作。已经保存在那里的命令可以通过 F8 等再次访问,并且新命令也会再次保存到历史文件中。

  • powershell -noexit Set-PSReadlineOption -HistorySavePath "C:\Users\admin\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt"通过脚本启动 powershell 也可以。

我还没有确切地知道为什么 Powershell 默认情况下不再使用历史文件。据我记得它以前可以工作,但我不确定为什么它停止工作。但从历史文件的内容来看,已经是很久之前的事了。

知道如何让它再次工作,而不需要在每次启动时应用解决方法(例如手动输入“历史记录保存命令”或使用“参数来启动它”)吗?

补充1:

这些命令给出以下输出(注意:使用其中任何一个后,历史记录再次正常工作,命令被保存到历史记录中,并且除了已使用的第一个命令并“重新激活”历史记录之外,可以调用完整内容)

PS C:\> (Get-PSReadlineOption).HistorySaveStyle
SaveIncrementally
PS C:\> (Get-PSReadlineOption).HistoryNoDuplicates
True
PS C:\> (Get-PSReadlineOption).MaximumHistoryCount
4096
Run Code Online (Sandbox Code Playgroud)

补充2:

$PROFILE给我以下输出(该命令不会影响历史记录的行为)。注意:列出的文件不存在于指定的目录中:

PS C:\> $PROFILE | Get-Member -Type NoteProperty


   TypeName: System.String

Name                   MemberType   Definition
----                   ----------   ----------
AllUsersAllHosts       NoteProperty string AllUsersAllHosts=C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
AllUsersCurrentHost    NoteProperty string AllUsersCurrentHost=C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    NoteProperty string CurrentUserAllHosts=C:\Users\username\Documents\WindowsPowerShell\profile.ps1
CurrentUserCurrentHost NoteProperty string CurrentUserCurrentHost=C:\Users\username\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Run Code Online (Sandbox Code Playgroud)

添加 3 …

powershell command-history windows-11

5
推荐指数
1
解决办法
3875
查看次数

如何在运行命令对话框中启用命令历史记录?

可能的重复:
为 Vista 管理员启用运行对话框的历史记录

在我的 PC(运行 Windows 7 Professional - 64 位)中,运行对话框不会保留以前命令的历史记录!因此,输入命令时不会显示任何建议!
如何启用此功能?

当我输入命令时没有显示任何建议!

windows-7 run-dialog command-history

4
推荐指数
1
解决办法
1万
查看次数

从bash脚本调用历史时“历史位置超出范围”

我想制作一个简单的脚本bash_history,根据用户输入的行号从 中删除一行。

echo -n "Delete History Line Number: "
read num
history -d $num
Run Code Online (Sandbox Code Playgroud)

错误是“历史位置超出范围”(它不应该是,我使用的是范围内的数字)。

为什么这不起作用?

bash command-history

4
推荐指数
1
解决办法
4433
查看次数

shell 中的 CTRL+R - 如果我跳过了我想要的命令,我该如何回到它?

我正狂热地按CTRL+R来查找我不久前使用过的一些命令,但突然间我找到了它。通过反射,我继续点击CTRL+ R,将它传递给 shell 历史中更远的东西。如何返回我刚刚通过的命令,而不必重新开始整个搜索?

search keyboard-shortcuts bash shell command-history

4
推荐指数
1
解决办法
3318
查看次数

为什么选择 ctrl+c 来杀死一个进程?

我知道为什么要 ctrl+c杀死程序;我对为什么选择“c”而不是其他字母的历史更感兴趣,因为它(显然)没有语义意义。

如果有人知道这背后的历史(以及其他诸如ctrl+dEOF的历史),那就太棒了。

command-history

4
推荐指数
1
解决办法
1053
查看次数