Ⅰ linux查看歷史命令記錄及時間(linux查看歷史命令執行時間)
1."linux查看歷史命令,為您提供linux查看歷史命令圖文信息,打開linux客戶端。
2.點擊連接linux按鈕。
3.輸入用戶名,主機ip地址。
4.輸入密碼。
5.顯示連接成功,就可以進行操作。
6.輸入history命令,即可返回命令的歷史記錄。
Ⅱ linux命令行歷史記錄搜索,然後再執行
1.可以按一下上\下方向鍵,命令行就會顯示相對於當前命令的上一條或下一條歷史記錄.
2.和方向鍵相同功能的就是組合鍵Ctrl+
p
(前面執行過的命令),Ctrl
+n(後面執行過的命令).
2.上面兩個都是相對於當前命令查詢上一條或者下一條命令的歷史記錄.如果搜索命令歷史記錄,
就用Ctrl+
r
組合鍵進入歷史記錄搜尋狀態,然後,鍵盤每按一個字母,當前命令行就會搜索出命令歷史記錄.
Ⅲ linux下文件歷史操作記錄如何查詢
last查看最近可以的登錄。由此判斷那些人操作過。查找該文件去向。如果是仍然保存在本地的話你可以用命令:
find
/
-name
壓縮包文件名
進行查找。如果是被刪除那就不好找啦。
Ⅳ linux中查看歷史記錄
1、使用w命令查看登錄用戶正在使用的進程信息,w命令用於顯示已經登錄系統的用戶的名稱,以及他們正在做的事。該命令所使用的信息來源於/var/run/utmp文件。w命令輸出的信息包括:用戶名稱
用戶的機器名稱或tty號
遠程主機地址
用戶登錄系統的時間
空閑時間(作用不大)
附加到tty(終端)的進程所用的時間(JCPU時間)
當前進程所用時間(PCPU時間)
用戶當前正在使用的命令
$ w
23:04:27 up 29 days, 7:51, 3 users, load average: 0.04, 0.06, 0.02
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ramesh pts/0 10.1.80.56 22:57 8.00s 0.05s 0.01s sshd: ramesh [priv]
jason pts/1 10.20.48 23:01 2:53 0.01s 0.01s -bash
john pts/2 10.1.80.7 23:04 0.00s 0.00s 0.00s w
此外,可以使用who am i查看使用該命令的用戶及進程,使用who查看所有登錄用戶進程信息,這些查看命令大同小異;
2. 在linux系統的環境下,不管是root用戶還是其它的用戶只有登陸系統後用進入操作我們都可以通過命令history來查看歷史記錄, 可是假如一台伺服器多人登陸,一天因為某人誤操作了刪除了重要的數據。這時候通過查看歷史記錄(命令:history)是沒有什麼意義了(因為history只針對登錄用戶下執行有效,即使root用戶也無法得到其它用戶histotry歷史)。那有沒有什麼辦法實現通過記錄登陸後的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile裡面加入以下代碼就可以實現:
查看某用戶 cat /home/username/.bash_history 的操作歷史
使用root登陸使用last -x可查看用戶登陸歷史。
last 命令:
功能說明:列出目前與過去登入系統的用戶相關信息。
語 法:last [-adRx][-f ][-n ][帳號名稱…][終端機編號…]
補充說明:單獨執行last指令,它會讀取位於/var/log目錄下,
名稱為wtmp的文件,並把該給文件的內容記錄的登入系統的用戶名單全部顯示出來。
參 數:
-a 把從何處登入系統的主機名稱或IP地址,顯示在最後一行。
-d 將IP地址轉換成主機名稱。
-f 指定記錄文件。
-n 或- 設置列出名單的顯示列數。
-R 不顯示登入系統的主機名稱或IP地址。
-x 顯示系統關機,重新開機,以及執行等級的改變等信息
這個是某位高人寫的。希望對你有幫助。那有沒有什麼辦法實現通過記錄登陸後的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile裡面加入以下代碼就可以實現: #PS1=」`whoami`@`hostname`:」'[$PWD]'
#history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date +」 %Y%m%d_%H%M%S」`
export HISTFILE=」/tmp/dbasky/${LOGNAME}/${USER_IP}.dbasky.$DT」
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null可以看到在使用history命令的時候是沒時間顯示,不知道這個命令是什麼時候所執行,這個時候可以編輯/etc/bashrc文件,加入如下三行:HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT=」%Y%m%d-%H%M%S: 」
export HISTTIMEFORMAT保存後退出,關閉當前shell,並重新登錄
這個時候,在~/.bash_History文件中,就有記錄命令執行的時間了
用cat命令顯示這個文件,但是卻會看到這個時間不是年月日顯示的
Ⅳ 請教各位,linux怎麼找歷史命令
通過鍵盤上的方向鍵↑和方向鍵↓來快速找到最近的幾次輸入命令。比如我們依次輸入了以下幾個命令:cd cm5 ls cd .. ls pwd這幾個命令
當我們輸入方向鍵↑的時候會看到之前的一個命令pwd。這樣就不用再輸入命令了。
當我們再按下方向鍵↑的時候,我們會看到之前的倒數第二個命令ls。依次類推,可以一直往前找。而方向鍵↓可以往後找。
如果要找的命令需要按↑鍵很多次的時候,就不太方便了,這時候我們可以用history命令來查看。
history命令默認會查看最近的所有命令,如果我們只想看最近的幾條命令,可以使用history 數字的形式。
當然history可以配合grep命令使用,如果想查看最近的命令中包含cd的命令,可以使用history|grep cd
如果我們想執行歷史記錄中的第83個命令,cd /etc/yum.repos.d,我們可以將此命令復制,粘貼執行。也可以採用如下方式:!83
Ⅵ Linux下如何查看終端命令的歷史記錄
用history命令可以查看最近100條輸入的歷史命令記錄。
家目錄的 .bash_history 文件也會記錄歷史記錄。可以使用 cat .bash_history查看。
Ⅶ linux查看歷史操作記錄
在linux系統的環境下,不管是root用戶還是其它的用戶只有登陸系統後用進入操作我們都可以通過命令history來查看歷史記錄,可是假如一台伺服器多人登陸,一天因為某人誤操作了刪除了重要的數據。這時候通過查看歷史記錄(命令:history)是沒有什麼意義了(因為history只針對登錄用戶下執行有效,即使root用戶也無法得到其它用戶histotry歷史)。那有沒有什麼辦法實現通過記錄登陸後的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile裡面加入以下代碼就可以實現:
PS1="`whoami`@`hostname`:"'[$PWD]'
history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP} dbasky.$DT"
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null
source /etc/profile 使用腳本生效
退出用戶,重新登錄
上面腳本在系統的/tmp新建個dbasky目錄,記錄所有登陸過系統的用戶和IP地址(文件名),每當用戶登錄/退出會創建相應的文件,該文件保存這段用戶登錄時期內操作歷史,可以用這個方法來監測系統的安全性。
root@zsc6:[/tmp/dbasky/root]ls
10.1.80.47 dbasky.2013-10-24_12:53:08
root@zsc6:[/tmp/dbasky/root]cat 10.1.80.47 dbasky.2013-10-24_12:53:08
查看在12:53:08從10.1.80.47登錄的root用戶操作命令歷史
Ⅷ linux命令歷史
查看命令歷史用history命令,歷史命令只有在注銷的時候,才會被更新到~/.bash_history這個系統歷史命令記錄文件中;當你下次以bash登錄Linux的時候,系統會主動由當前用戶的~/.bash_history文件讀取歷史命令的記錄。
history命令用法:
history 數字
列出最近的n條命令;
history -w
將目前的歷史記憶的內容強制立即寫入~/.bash_history文件中;
history -c
將目前所有的歷史命令記錄全部清除。
你好,
1、修改/etc/profile將HISTSIZE=1000改成0或1
清除用戶home路徑下。bash_history
2、立即清空里的history當前歷史命令的記錄
history -c
3、bash執行命令時不是馬上把命令名稱寫入history文件的,而是存放在內部的buffer中,等bash退出時會一並寫入。
不過,可以調用'history -w'命令要求bash立即更新history文件。
history -w
後續操作的刪除命令只會刪除當前用戶的操作命令,並不會影響其他用戶。
在提示符後輸入命令history,就可以查看到當前用戶的歷史操作命令。圖中所示的是目前系統保存到root用戶輸入的377條命令。
在提示符下輸入命令history -c就可以刪除歷史操作命令。再用history命令查看,發現歷史操作命令已刪除。
如果希望系統不再保存歷史操作命令,就必須更改配置文件目錄下的配置文件profile。首先使用vi編輯器打開該文件。
找到HISTSIZE這個值,默認情況下歷史命令將保存1000條,可以將該值改為0,然後保存並退出,最後重啟系統使得配置文件生效。
6重啟完成後,再次使用命令history查看,發現系統已不再記錄命令。
linux的bash內部命令history就可以顯示命令行的命令歷史,默認環境執行 history
命令後,通常只會顯示已執行命令的序號和命令本身。
如果想要查看命令歷史的時間戳,那麼可以執行:
# export HISTTIMEFORMAT='%F %T '
# history | more
1 2008-08-05 19:02:39 service work restart
2 2008-08-05 19:02:39 exit
3 2008-08-05 19:02:39 id
這樣顯示的格式就變成,序號 - 時間 - 命令行。
history的其他的一些基本功能:
1、使用 HISTSIZE 控制歷史命令記錄的總行數
將下面兩行內容追加到 .bash_profile 文件並重新登錄 bash shell,命令歷史的記錄數將變成 450
條:
# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
2、使用 HISTFILE 更改歷史文件名稱
默認情況下,命令歷史存儲在 ~/.bash_history 文件中。添加下列內容到 .bash_profile 文件並重新登錄
bash shell,將使用 mandline_warrior 來存儲命令歷史:
# vi ~/.bash_profile
HISTFILE=/root/mandline_warrior
3、使用 HISTCONTROL 從命令歷史中剔除連續重復的條目
在下面的例子中,pwd 命令被連續執行了三次。執行 history 後會看到三條重復的條目。要剔除這些重復的條目,可以將
HISTCONTROL 設置為 ignoreps:
# export HISTCONTROL=ignoreps
4、使用 HISTCONTROL 清除整個命令歷史中的重復條目
上例中的 ignoreps 只能剔除連續的重復條目。要清除整個命令歷史中的重復條目,可以將 HISTCONTROL 設置成
eraseps:
# export HISTCONTROL=eraseps
5、使用 -c 選項清除所有的命令歷史
如果你想清除所有的命令歷史,可以執行:
# history -c
6、使用 HISTIGNORE 忽略歷史中的特定命令
下面的例子,將忽略 pwd、ls、ls -ltr 等命令:
# export HISTIGNORE=」pwd:ls:ls -ltr:」
history命令可以用來顯示曾執行過的命令。
執行過的命令默認存儲在HOME目錄的.bash_history文件中,可以通過查看該文件來獲取執行命令的歷史記錄。需要注意的是.bash_history不包含當前會話所執行的命令,執行過的命令在關機時才會寫入文件,除非執行命令history -w。
了解linux基礎命令,另外你是感興趣的話可以看下劉遄老師寫的《Linux就該這么學》作為入門的書籍,覺得不錯的話採納下哦~。
可以使用History命令,主要用於顯示歷史指令記錄內容, 下達歷史紀錄中的指令 。
1、History命令語法:
[test@linux]# history [n]
[test@linux]# history [-c]
[test@linux]# history [-raw] histfiles
參數:
n:數字,要列出最近的 n 筆命令列表
-c:將目前的shell中的所有 history 內容全部消除
-a:將目前新增的history 指令新增入 histfiles 中,若沒有加 histfiles ,
則預設寫入 ~/.bash_history
-r:將 histfiles 的內容讀到目前這個 shell 的 history 記憶中
-w:將目前的 history 記憶內容寫入 histfiles
Linux系統在shell(控制台)中輸入並執行命令時,shell會自動把命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中。默認保存1000條,也可以更改這個值。
如果鍵入history, history會顯示所使用的前1000個歷史命令,並且編了號,會看到一個用數字編號的列錶快速從屏幕上卷過。可能不需要查看1000個命令中的所有項目, 當然也可以加入數字來列出最近的 n 筆命令列表。
linux中history命令不僅僅可以查詢歷史命令而已. 還可以利用相關的功能來幫執行命令。
2、運行特定的歷史命令
history會列出bash保存的所有歷史命令,並且編了號,可以使用「嘆號接編號」的方式運行特定的歷史命令.
語法說明:
[test@linux]# [!number] [!mand] [!!]
參數說明:
number :第幾個指令的意思;
mand:指令的開頭幾個字母
! :上一個指令的意思!
3、History命令實戰
列出所有的歷史記錄:
[test@linux] # history
只列出最近10條記錄:
[test@linux] # history 10 (注,history和10中間有空格)
使用命令記錄號碼執行命令,執行歷史清單中的第99條命令
[test@linux] #!99 (!和99中間沒有空格)
重復執行上一個命令
[test@linux] #!!
執行最後一次以rpm開頭的命令(!? ?代表的是字元串,這個String可以隨便輸,Shell會從最後一條歷史命令向前搜索,最先匹配的一條命令將會得到執行。)
[test@linux] #!rpm
逐屏列出所有的歷史記錄:
[test@linux]# history | more
立即清空history當前所有歷史命令的記錄
[test@linux] #history -c
除了使用history命令,在 shell 或 GUI 終端提示下,也可以使用上下方向鍵來翻閱命令歷史(向下箭頭會向前翻閱),直到找到所需命令為止。這可以很方便地編輯前面的某一條命令,而不用重復輸入類似的命令。
Ⅸ 請問linux的history指令如何顯示全部的歷史記錄
用強大的 history 命令使你的命令行提示符更有效率。
隨著我在終端中花費越來越多的時間,我感覺就像在不斷地尋找新的命令,以使我的日常任務更加高效。GNU 的 history 命令是一個真正改變我日常工作的命令。
GNU history 命令保存了從該終端會話運行的所有其他命令的列表,然後允許你重放或者重用這些命令,而不用重新輸入它們。如果你是一個老玩家,你知道 history 的力量,但對於我們這些半吊子或新手系統管理員來說, history 是一個立竿見影的生產力增益。
歷史 101
要查看命令歷史,請在 Linux 中打開終端程序,然後輸入:
$ history
這是我得到的響應:
1 clear
2 ls -al
3 sudo dnf update -y
4 history
history 命令顯示自開始會話後輸入的命令列表。 history 有趣的地方是你可以使用以下命令重放任意一個命令:
$ !3
提示符中的 !3 告訴 shell 重新運行歷史列表中第 3 個命令。我還可以輸入以下命令來使用:
linuser@my_linux_box: !sudo dnf
history 將搜索與你提供的模式相匹配的最後一個命令,並運行它。
搜索歷史
你還可以輸入 !! 重新運行命令歷史中的最後一條命令。而且,通過與grep 配對,你可以搜索與文本模式相匹配的命令,或者通過與 tail 一起使用,你可以找到你最後幾條執行的命令。例如:
$ history | grep dnf
3 sudo dnf update -y
5 history | grep dnf
$ history | tail -n 3
4 history
5 history | grep dnf
6 history | tail -n 3
另一種實現這個功能的方法是輸入 Ctrl-R 來調用你的命令歷史記錄的遞歸搜索。輸入後,提示變為:
(reverse-i-search)`':
現在你可以開始輸入一個命令,並且會顯示匹配的命令,按回車鍵執行。
Ⅹ 如何查看Linux中各個用戶的歷史操作命令
歷史命令查看方法
history 【選項】 【歷史命令保存文件】
選項:
-c 清空歷史命令
-w 把緩存中的歷史命令寫入歷史命令保存文件~/.bash_history
每個用戶文件下都有一個歷史命令的保存文件,相互之間不會沖突。
直接用history看到的歷史命令是要比.bash_history文件中的歷史命令多一些的,因為我們登錄之後新操作的命令只有等我們正確退出之後才會寫入到.bash_history中。
history -w就可以強制將當前的歷史命令寫入到.bash_history中去
歷史命令默認會保存1000條,如果我們覺得太少,可以在環境變數配置文件
/etc/profile中進行修改,找到HISTSIZE=1000,把這里的1000改成你想要的值後按shift+:輸入wq保存並退出。
歷史命令的調用方法:
1.使用上下箭頭調用。
2.使用「!n」重復執行第n條歷史命令
3.使用「!!」重復執行上一條歷史命令
4.使用 「!字串」重復執行最後一條以該字串開頭的命令
Tab鍵是我們進行命令或者文件補全的快捷鍵,用好了不僅能提高我們輸入效率,而且能很好的幫我們排錯,以免命令輸出。