Linux 如何将命令历史记录计入shell变量?

Linux 如何将命令历史记录计入shell变量?,linux,bash,shell,command,Linux,Bash,Shell,Command,我正在使用下面的脚本计算命令历史记录,但总是得到0,如何将历史记录计算到shell变量 #/bin/bash 计数=$(历史记录| wc-l) echo$count 首先,您必须激活脚本中的shell内置历史记录: HISTFILE=~/.bash_history set -o history 之后,您可以使用源代码。如果您想要交互式shell的历史记录行计数,请尝试运行。脚本的名称或脚本的源名称。另外,请尝试echo$HISTCMD,因为@Milag已经概述了与当前shell相关的历史记录,

我正在使用下面的脚本计算命令历史记录,但总是得到0,如何将历史记录计算到shell变量

#/bin/bash
计数=$(历史记录| wc-l)
echo$count

首先,您必须激活脚本中的shell内置
历史记录

HISTFILE=~/.bash_history
set -o history

之后,您可以使用源代码。

如果您想要交互式shell的历史记录行计数,请尝试运行
。脚本的名称
或脚本的源名称。另外,请尝试
echo$HISTCMD
,因为@Milag已经概述了与当前shell相关的历史记录,因此在没有源代码的情况下运行脚本将在另一个没有历史记录的bash shell中运行history命令。如何在同一脚本文件中运行脚本的源名称?似乎不可能,但脚本和直接运行命令的计数结果似乎不相等,为什么会发生这种情况?是否有任何方法可以使它们相同?.bash_历史文件似乎与history命令不同,但如果我注销/登录,它们几乎相同。在.bash_history中删除行之前,似乎历史缓存行。