歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix基礎知識

如何讓AIX、LINUX的History命令顯示執行時間

問題描述:Linux、AIX上都提供了History命令,可以查詢以前執行的命令歷史記錄,但是這個記錄並不包含時間項目。有時候需要回溯源頭時比較郁悶。如何讓History記錄時間呢?如下針對LINXU和AIX進行了實踐,本文本意是作為個人記錄。

一、LINUX系統

1、編輯編輯/etc/bashrc文件,加入如下三行:

HISTFILESIZE=2000

HISTSIZE=2000

HISTTIMEFORMAT="%Y%m%d-%H%M%S: "

export HISTTIMEFORMAT

保存後退出,關閉當前shell,並重新登錄這個時候,在~/.bash_History文件中,就有記錄命令執行的時間了

注意:本方法必須在服務器剛剛新安裝好時候,就設置這個參數。

如果是已經運行了很久的服務器才添加這個參數,則以前的那些命令歷史記錄是不顯示時間的。

2、顯示的時間格式

[weblogic@localhost ~]$ history

 992  20120223-103953: hisrory

 993  20120223-103953: history

 994  20120223-103953: vi /etc/bashrc

 995  20120223-103953: vi /etc/bashrc

 996  20120223-103953: cd /etc

1040  20120222-114927: sl

1041  20120222-114932: cat

1042  20120222-114955: tac

1043  20120222-115000: more

1044  20120222-115005: erom

1045  20120223-103956: hisroy

1046  20120223-104000: history

二、AIX系統

1、用ROOT用戶VI,添加EXTENDED_HISTORY=ON至/etc/environment

2、其他用戶登陸

AIX Version 5

(C) Copyrights by IBM and by others 1982, 2006.

login: oracle

oracle's Password:

*******************************************************************************

*                                                                             *

*                                                                             *

*  Welcome to AIX Version 5.3!                                                *

*                                                                             *

*                                                                             *

*  Please see the README file in /usr/lpp/bos for information pertinent to    *

*  this release of the AIX Operating System.                                  *

*                                                                             *

*                                                                             *

*******************************************************************************

Last unsuccessful login: Sat Nov 19 02:10:46 BEIST 2011 on ftp from ::ffff:172.16.128.16

Last login: Wed Feb 15 16:52:01 BEIST 2012 on /dev/pts/0 from 172.16.3.6

[YOU HAVE NEW MAIL]

$ env

_=/bin/env

TMPDIR=/tmp

LANG=en_US

TEMP=/tmp

LOGIN=oracle

PATH=/home/oracle/database/bin:/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/home/oracle/bin:/usr/bin/X11:/sbin:.

EXTENDED_HISTORY=ON==========================環境變量已經有了

ORACLE_BASE=/home/oracle

LC__FASTMSG=true

LOGNAME=oracle

TMP=/tmp

MAIL=/usr/spool/mail/oracle

ORACLE_SID=standby

LOCPATH=/usr/lib/nls/loc

USER=oracle

AUTHSTATE=compat

SHELL=/usr/bin/ksh

ODMDIR=/etc/objrepos

HOME=/home/oracle

TERM=xterm

3、fc -t命令看到此後的命令已經有時間記錄了

$ fc -t

143     ? :: cd /home/oracle/admin/standby/bdump

144     ? :: tail -f *.log

145     ? :: df -g

146     ? :: tail -f *.log

147     ? :: cd /home/oracle/admin/zjport/bdump

148     ? :: tail -f *.log

149     ? :: cd /home/oracle/admin/standby/bdump

150     ? :: tail -f *.log

151     ? :: errpt

152     ? :: cd /home/oracle/admin/standby/bdump

153     ? :: tail -f *.log

154     ? :: vi ~/.bash_profile

155     ? :: su -

156     2012/02/23 10:54:45 :: env

157     2012/02/23 10:54:49 :: history

158     2012/02/23 10:54:54 :: fc -t

4、切換回ROOT,發現也可以實現記錄時間了

$ su -

root's Password:

P560A:/#fc -t

539     ? :: set -o vi or ksh -o vi

540     ? :: history

541     ? :: errpt -a>errpt-a.20111223

542     ? :: fc -t

543     ? :: whoami

544     ? :: more /etc/profile

545     ? :: cp /etc/profile /etc/profile_bak

546     ? :: vi /etc/profile

547     ? :: whoami

548     ? :: cd /etc

549     ? :: ls -lt|grep pro

550     ? :: vi /etc/environment

551     ? :: env

552     ? :: fc -t

553     ? :: fc -t

554     2012/02/23 10:56:04 :: fc -t

附:在AIX下 運行history命令顯示出來的歷史命令的語句是什麼

1. $set -o vi or ksh -o vi

2. 按esc,k--上一次命令,j下一個命令,可以編輯命令,操作同vi

本文出自 “麥地塢” 博客,請務必保留此出處http://yunlongzheng.blog.51cto.com/788996/787549

Copyright © Linux教程網 All Rights Reserved