Linux系統(tǒng)會記錄用戶登陸系統(tǒng)后執(zhí)行過的命令;在一定情況下,可以幫助對系統(tǒng)的管理。
從事四川樂山服務(wù)器托管,服務(wù)器租用,云主機(jī),網(wǎng)站空間,域名注冊,CDN,網(wǎng)絡(luò)代維等服務(wù)。
配置參數(shù):
HISTTIMEFORMAT = '%F %T ' #日期格式
HISTSIZE = 4000 #保留日志數(shù)量
HISTFILE = /var/history #存儲文件
缺點(diǎn):
1、默認(rèn)的記錄用戶命令服務(wù),沒有記錄命令執(zhí)行的時間。
2、沒有記錄用戶登陸的IP
3、同一個用戶的不同會話,記錄到同一個文件中;無法根據(jù)不同會話分別記錄。
優(yōu)化:
1、每次用戶登陸后,根據(jù)用戶賬號、登陸IP和登陸時間確定存儲文件名。這樣除非同一個用戶,同一個IP,同一時刻登陸服務(wù)器才會記錄到同一個文件中。
2、將上述設(shè)置,配置為用戶登陸后,自動執(zhí)行
3、將日志寫入一個隱藏目錄中。
腳本內(nèi)容:
將腳本放在/etc/profile.d/history.sh中。
1、首先打開Linux直接輸入一個history即可。
2、然后如果想執(zhí)行歷史中的某個命令,直接感嘆號加行號即可。
3、還可以運(yùn)用感嘆號加命令的起始字符即可調(diào)出歷史命令。
4、輸完了以后按回車你就會看到命令起作用了。
5、然后就會顯示Linux中各個用戶具體的操作時間和操作,通過以上步驟即可解決查看Linux中各個用戶的歷史操作命令的問題。
一、如何查看Linux中各個用戶的歷史操作命令
查看命令歷史用history命令,歷史命令只有在注銷的時候,才會被更新到~/.bash_history這個系統(tǒng)歷史命令記錄文件中;當(dāng)你下次以bash登錄Linux的時候,系統(tǒng)會主動由當(dāng)前用戶的~/.bash_history文件讀取歷史命令的記錄。
history命令用法:
history 數(shù)字
列出最近的n條命令;
history -w
將目前的歷史記憶的內(nèi)容強(qiáng)制立即寫入~/.bash_history文件中;
history -c
將目前所有的歷史命令記錄全部清除。
二、如何將Linux系統(tǒng)的歷史操作命令刪除
你好,
1、修改/etc/profile將HISTSIZE=1000改成0或1
清除用戶home路徑下。bash_history
2、立即清空里的history當(dāng)前歷史命令的記錄
history -c
3、bash執(zhí)行命令時不是馬上把命令名稱寫入history文件的,而是存放在內(nèi)部的buffer中,等bash退出時會一并寫入。
不過,可以調(diào)用'history -w'命令要求bash立即更新history文件。
history -w
后續(xù)操作的刪除命令只會刪除當(dāng)前用戶的操作命令,并不會影響其他用戶。
在提示符后輸入命令history,就可以查看到當(dāng)前用戶的歷史操作命令。圖中所示的是目前系統(tǒng)保存到root用戶輸入的377條命令。
在提示符下輸入命令history -c就可以刪除歷史操作命令。再用history命令查看,發(fā)現(xiàn)歷史操作命令已刪除。
如果希望系統(tǒng)不再保存歷史操作命令,就必須更改配置文件目錄下的配置文件profile。首先使用vi編輯器打開該文件。
找到HISTSIZE這個值,默認(rèn)情況下歷史命令將保存1000條,可以將該值改為0,然后保存并退出,最后重啟系統(tǒng)使得配置文件生效。
6重啟完成后,再次使用命令history查看,發(fā)現(xiàn)系統(tǒng)已不再記錄命令。
三、linux怎么樣顯示命令歷史后又顯示命令的輸入時間
linux的bash內(nèi)部命令history就可以顯示命令行的命令歷史,默認(rèn)環(huán)境執(zhí)行 history
命令后,通常只會顯示已執(zhí)行命令的序號和命令本身。
如果想要查看命令歷史的時間戳,那么可以執(zhí)行:
# 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 控制歷史命令記錄的總行數(shù)
將下面兩行內(nèi)容追加到 .bash_profile 文件并重新登錄 bash shell,命令歷史的記錄數(shù)將變成 450
條:
# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
2、使用 HISTFILE 更改歷史文件名稱
默認(rèn)情況下,命令歷史存儲在 ~/.bash_history 文件中。添加下列內(nèi)容到 .bash_profile 文件并重新登錄
bash shell,將使用 mandline_warrior 來存儲命令歷史:
# vi ~/.bash_profile
HISTFILE=/root/mandline_warrior
3、使用 HISTCONTROL 從命令歷史中剔除連續(xù)重復(fù)的條目
在下面的例子中,pwd 命令被連續(xù)執(zhí)行了三次。執(zhí)行 history 后會看到三條重復(fù)的條目。要剔除這些重復(fù)的條目,可以將
HISTCONTROL 設(shè)置為 ignoredups:
# export HISTCONTROL=ignoredups
4、使用 HISTCONTROL 清除整個命令歷史中的重復(fù)條目
上例中的 ignoredups 只能剔除連續(xù)的重復(fù)條目。要清除整個命令歷史中的重復(fù)條目,可以將 HISTCONTROL 設(shè)置成
erasedups:
# export HISTCONTROL=erasedups
5、使用 -c 選項(xiàng)清除所有的命令歷史
如果你想清除所有的命令歷史,可以執(zhí)行:
# history -c
6、使用 HISTIGNORE 忽略歷史中的特定命令
下面的例子,將忽略 pwd、ls、ls -ltr 等命令:
# export HISTIGNORE=”pwd:ls:ls -ltr:”
四、請問linux的history指令如何顯示全部的歷史記錄
history命令可以用來顯示曾執(zhí)行過的命令。
執(zhí)行過的命令默認(rèn)存儲在HOME目錄的.bash_history文件中,可以通過查看該文件來獲取執(zhí)行命令的歷史記錄。需要注意的是.bash_history不包含當(dāng)前會話所執(zhí)行的命令,執(zhí)行過的命令在關(guān)機(jī)時才會寫入文件,除非執(zhí)行命令history -w。
了解linux基礎(chǔ)命令,另外你是感興趣的話可以看下劉遄老師寫的《Linux就該這么學(xué)》作為入門的書籍,覺得不錯的話采納下哦~。
五、linux 查看當(dāng)前系統(tǒng)默認(rèn)可以記住用戶多少個歷史命令用什么命令
可以使用History命令,主要用于顯示歷史指令記錄內(nèi)容, 下達(dá)歷史紀(jì)錄中的指令 。
1、History命令語法:
[test@linux]# history [n]
[test@linux]# history [-c]
[test@linux]# history [-raw] histfiles
參數(shù):
n:數(shù)字,要列出最近的 n 筆命令列表
-c:將目前的shell中的所有 history 內(nèi)容全部消除
-a:將目前新增的history 指令新增入 histfiles 中,若沒有加 histfiles ,
則預(yù)設(shè)寫入 ~/.bash_history
-r:將 histfiles 的內(nèi)容讀到目前這個 shell 的 history 記憶中
-w:將目前的 history 記憶內(nèi)容寫入 histfiles
Linux系統(tǒng)在shell(控制臺)中輸入并執(zhí)行命令時,shell會自動把命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中。默認(rèn)保存1000條,也可以更改這個值。
如果鍵入history, history會顯示所使用的前1000個歷史命令,并且編了號,會看到一個用數(shù)字編號的列表快速從屏幕上卷過。可能不需要查看1000個命令中的所有項(xiàng)目, 當(dāng)然也可以加入數(shù)字來列出最近的 n 筆命令列表。
linux中history命令不僅僅可以查詢歷史命令而已. 還可以利用相關(guān)的功能來幫執(zhí)行命令。
2、運(yùn)行特定的歷史命令
history會列出bash保存的所有歷史命令,并且編了號,可以使用“嘆號接編號”的方式運(yùn)行特定的歷史命令.
語法說明:
[test@linux]# [!number] [!mand] [!!]
參數(shù)說明:
number :第幾個指令的意思;
mand:指令的開頭幾個字母
! :上一個指令的意思!
3、History命令實(shí)戰(zhàn)
列出所有的歷史記錄:
[test@linux] # history
只列出最近10條記錄:
[test@linux] # history 10 (注,history和10中間有空格)
使用命令記錄號碼執(zhí)行命令,執(zhí)行歷史清單中的第99條命令
[test@linux] #!99 (!和99中間沒有空格)
重復(fù)執(zhí)行上一個命令
[test@linux] #!!
執(zhí)行最后一次以rpm開頭的命令(!? ?代表的是字符串,這個String可以隨便輸,Shell會從最后一條歷史命令向前搜索,最先匹配的一條命令將會得到執(zhí)行。)
[test@linux] #!rpm
逐屏列出所有的歷史記錄:
[test@linux]# history | more
立即清空history當(dāng)前所有歷史命令的記錄
[test@linux] #history -c
除了使用history命令,在 shell 或 GUI 終端提示下,也可以使用上下方向鍵來翻閱命令歷史(向下箭頭會向前翻閱),直到找到所需命令為止。這可以很方便地編輯前面的某一條命令,而不用重復(fù)輸入類似的命令。
網(wǎng)站欄目:linux的命令記錄 linux命令記錄怎么刪除
文章地址:http://muchs.cn/article0/dohdjio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、微信公眾號、自適應(yīng)網(wǎng)站、服務(wù)器托管、網(wǎng)站排名、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)