当我运行history
命令(在 tcsh 上)时,它仅打印时间戳的 TIME 部分并省略日期:
3 15:07 echo $PATH
4 15:07 ls -la
在bash中,您可以使用HISTTIMEFORMAT
环境变量来影响命令打印的时间戳格式history
。
例如set HISTTIMEFORMAT="[%F %T %Z] "
有没有办法在 tcsh 中执行此操作,如果可以,需要哪个版本的 tcsh?我们有 tcsh 6.17.00。
环境:Red Har Linux 4.4,但我认为答案不应该受到影响,因为history
它是内置的 shell,而不是操作系统提供的二进制文件。
答案1
从tcsh
手册页。
摘抄
历史 第一个字表示要保存的历史事件的数量。可选的第二个字(+)表示打印历史记录的格式;如果没有给出,
%h\t%T\t%R\n
则使用。格式顺序在提示下描述如下;注意 的变量含义%R
。100
默认设置为。
例子
$ set history= ( 1000 "%h %W/%D/%Y %T %R\n" )
结果是:
$ history
2 09/08/2014 22:48 set history= ( 1000 "%h %W/%D/%Y %T %R\n" )
7 09/08/2014 22:49 ls
9 09/08/2014 22:49 echo "hi"
10 09/08/2014 22:49 history
这将导致最后 1000 个命令的历史记录以"%h %W/%D/%Y %T %R\n"
.
%h
- 历史 #%W/%D/%Y
- 月日年- `%T - 24 小时。时间
%R
- 命令运行
这些宏的完整描述在手册页中定义,向下滚动到解释命令tcsh
的部分。prompt
他们就在那里。