我有这个小脚本:
#!/usr/bin/perl
use strict;
use warnings;
my @a = `history`;
print @a;
这是我在这个脚本中询问错误的问题:Can't exec "history": No such file or directory at gatherinformation.pl line 7
正如我在问题中所提到的:我正在弄乱HISTFILESIZE
和HISTFILE
变量以获得我想要的输出。
由于我无法执行该脚本,无论如何我可以直接从/.bash_history
文件获得具有所需格式的相同结果吗?
答案 0 :(得分:1)
有没有办法直接从文件中获取
history
./bash_history
有日期和时间吗?
当然,我们可以读取文件并转换时间戳:
use POSIX qw(strftime);
my $histfile = "$ENV{'HOME'}/.bash_history";
open HIST, "<$histfile" or die "$histfile: $!";
while (<HIST>)
{
if (/^#(\d+)$/) { print strftime("%h/%d -- %H:%M:%S ", localtime $1); next }
print $_
}