一、如何查看Linux中各個(gè)用戶的歷史操作命令
創(chuàng)新互聯(lián)建站專(zhuān)注于企業(yè)全網(wǎng)整合營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、雁峰網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、商城網(wǎng)站定制開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為雁峰等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
查看命令歷史用history命令,歷史命令只有在注銷(xiāo)的時(shí)候,才會(huì)被更新到~/.bash_history這個(gè)系統(tǒng)歷史命令記錄文件中;當(dāng)你下次以bash登錄Linux的時(shí)候,系統(tǒng)會(huì)主動(dòng)由當(dāng)前用戶的~/.bash_history文件讀取歷史命令的記錄。
history命令用法:
history 數(shù)字
列出最近的n條命令;
history -w
將目前的歷史記憶的內(nèi)容強(qiáng)制立即寫(xiě)入~/.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í)行命令時(shí)不是馬上把命令名稱(chēng)寫(xiě)入history文件的,而是存放在內(nèi)部的buffer中,等bash退出時(shí)會(huì)一并寫(xiě)入。
不過(guò),可以調(diào)用'history -w'命令要求bash立即更新history文件。
history -w
后續(xù)操作的刪除命令只會(huì)刪除當(dāng)前用戶的操作命令,并不會(huì)影響其他用戶。
在提示符后輸入命令history,就可以查看到當(dāng)前用戶的歷史操作命令。圖中所示的是目前系統(tǒng)保存到root用戶輸入的377條命令。
在提示符下輸入命令history -c就可以刪除歷史操作命令。再用history命令查看,發(fā)現(xiàn)歷史操作命令已刪除。
如果希望系統(tǒng)不再保存歷史操作命令,就必須更改配置文件目錄下的配置文件profile。首先使用vi編輯器打開(kāi)該文件。
找到HISTSIZE這個(gè)值,默認(rèn)情況下歷史命令將保存1000條,可以將該值改為0,然后保存并退出,最后重啟系統(tǒng)使得配置文件生效。
6重啟完成后,再次使用命令history查看,發(fā)現(xiàn)系統(tǒng)已不再記錄命令。
三、linux怎么樣顯示命令歷史后又顯示命令的輸入時(shí)間
linux的bash內(nèi)部命令history就可以顯示命令行的命令歷史,默認(rèn)環(huán)境執(zhí)行 history
命令后,通常只會(huì)顯示已執(zhí)行命令的序號(hào)和命令本身。
如果想要查看命令歷史的時(shí)間戳,那么可以執(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
這樣顯示的格式就變成,序號(hào) - 時(shí)間 - 命令行。
history的其他的一些基本功能:
1、使用 HISTSIZE 控制歷史命令記錄的總行數(shù)
將下面兩行內(nèi)容追加到 .bash_profile 文件并重新登錄 bash shell,命令歷史的記錄數(shù)將變成 450
條:
# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
2、使用 HISTFILE 更改歷史文件名稱(chēng)
默認(rèn)情況下,命令歷史存儲(chǔ)在 ~/.bash_history 文件中。添加下列內(nèi)容到 .bash_profile 文件并重新登錄
bash shell,將使用 mandline_warrior 來(lái)存儲(chǔ)命令歷史:
# vi ~/.bash_profile
HISTFILE=/root/mandline_warrior
3、使用 HISTCONTROL 從命令歷史中剔除連續(xù)重復(fù)的條目
在下面的例子中,pwd 命令被連續(xù)執(zhí)行了三次。執(zhí)行 history 后會(huì)看到三條重復(fù)的條目。要剔除這些重復(fù)的條目,可以將
HISTCONTROL 設(shè)置為 ignoredups:
# export HISTCONTROL=ignoredups
4、使用 HISTCONTROL 清除整個(gè)命令歷史中的重復(fù)條目
上例中的 ignoredups 只能剔除連續(xù)的重復(fù)條目。要清除整個(gè)命令歷史中的重復(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:”
四、請(qǐng)問(wèn)linux的history指令如何顯示全部的歷史記錄
history命令可以用來(lái)顯示曾執(zhí)行過(guò)的命令。
執(zhí)行過(guò)的命令默認(rèn)存儲(chǔ)在HOME目錄的.bash_history文件中,可以通過(guò)查看該文件來(lái)獲取執(zhí)行命令的歷史記錄。需要注意的是.bash_history不包含當(dāng)前會(huì)話所執(zhí)行的命令,執(zhí)行過(guò)的命令在關(guān)機(jī)時(shí)才會(huì)寫(xiě)入文件,除非執(zhí)行命令history -w。
了解linux基礎(chǔ)命令,另外你是感興趣的話可以看下劉遄老師寫(xiě)的《Linux就該這么學(xué)》作為入門(mén)的書(shū)籍,覺(jué)得不錯(cuò)的話采納下哦~。
五、linux 查看當(dāng)前系統(tǒng)默認(rèn)可以記住用戶多少個(gè)歷史命令用什么命令
可以使用History命令,主要用于顯示歷史指令記錄內(nèi)容, 下達(dá)歷史紀(jì)錄中的指令 。
1、History命令語(yǔ)法:
[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 中,若沒(méi)有加 histfiles ,
則預(yù)設(shè)寫(xiě)入 ~/.bash_history
-r:將 histfiles 的內(nèi)容讀到目前這個(gè) shell 的 history 記憶中
-w:將目前的 history 記憶內(nèi)容寫(xiě)入 histfiles
Linux系統(tǒng)在shell(控制臺(tái))中輸入并執(zhí)行命令時(shí),shell會(huì)自動(dòng)把命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中。默認(rèn)保存1000條,也可以更改這個(gè)值。
如果鍵入history, history會(huì)顯示所使用的前1000個(gè)歷史命令,并且編了號(hào),會(huì)看到一個(gè)用數(shù)字編號(hào)的列表快速?gòu)钠聊簧暇磉^(guò)??赡懿恍枰榭?000個(gè)命令中的所有項(xiàng)目, 當(dāng)然也可以加入數(shù)字來(lái)列出最近的 n 筆命令列表。
linux中history命令不僅僅可以查詢(xún)歷史命令而已. 還可以利用相關(guān)的功能來(lái)幫執(zhí)行命令。
2、運(yùn)行特定的歷史命令
history會(huì)列出bash保存的所有歷史命令,并且編了號(hào),可以使用“嘆號(hào)接編號(hào)”的方式運(yùn)行特定的歷史命令.
語(yǔ)法說(shuō)明:
[test@linux]# [!number] [!mand] [!!]
參數(shù)說(shuō)明:
number :第幾個(gè)指令的意思;
mand:指令的開(kāi)頭幾個(gè)字母
! :上一個(gè)指令的意思!
3、History命令實(shí)戰(zhàn)
列出所有的歷史記錄:
[test@linux] # history
只列出最近10條記錄:
[test@linux] # history 10 (注,history和10中間有空格)
使用命令記錄號(hào)碼執(zhí)行命令,執(zhí)行歷史清單中的第99條命令
[test@linux] #!99 (!和99中間沒(méi)有空格)
重復(fù)執(zhí)行上一個(gè)命令
[test@linux] #!!
執(zhí)行最后一次以rpm開(kāi)頭的命令(?。??代表的是字符串,這個(gè)String可以隨便輸,Shell會(huì)從最后一條歷史命令向前搜索,最先匹配的一條命令將會(huì)得到執(zhí)行。)
[test@linux] #!rpm
逐屏列出所有的歷史記錄:
[test@linux]# history | more
立即清空history當(dāng)前所有歷史命令的記錄
[test@linux] #history -c
除了使用history命令,在 shell 或 GUI 終端提示下,也可以使用上下方向鍵來(lái)翻閱命令歷史(向下箭頭會(huì)向前翻閱),直到找到所需命令為止。這可以很方便地編輯前面的某一條命令,而不用重復(fù)輸入類(lèi)似的命令。
uname -a
2. cat /proc/version
3. cat /etc/issue
4. lsb_release -a
詳解 lsb_release -a
1. 登錄到服務(wù)器執(zhí)行 lsb_release -a ,即可列出所有版本信息,例如:
1. [root@3.5.5Biz-46 ~]# lsb_release -a
2. LSB Version: 1.3
3. Distributor ID: RedHatEnterpriseAS
4. Description: Red Hat Enterprise Linux AS release 4 (Nahant Update 1)
5. Release: 4
6. Codename: NahantUpdate1
7. [root@3.5.5Biz-46 ~]#
這個(gè)命令適用于所有的linux,包括Redhat、SuSE、Debian等發(fā)行版
在每個(gè)用戶的家目錄里,看文本命令很多,如: cat \ more \ less \ vi 等等這些命令都可以看某個(gè)用戶的 .bash_history 文件。
例:# more ~user/.bash_history 看 user 用戶的歷史命令,但是你要訪問(wèn)的權(quán)限才行。
忘說(shuō)了,看的是上次的歷史命令 :em02:
Linux系統(tǒng)會(huì)記錄用戶登陸系統(tǒng)后執(zhí)行過(guò)的命令;在一定情況下,可以幫助對(duì)系統(tǒng)的管理。
配置參數(shù):
HISTTIMEFORMAT = '%F %T ' #日期格式
HISTSIZE = 4000 #保留日志數(shù)量
HISTFILE = /var/history #存儲(chǔ)文件
缺點(diǎn):
1、默認(rèn)的記錄用戶命令服務(wù),沒(méi)有記錄命令執(zhí)行的時(shí)間。
2、沒(méi)有記錄用戶登陸的IP
3、同一個(gè)用戶的不同會(huì)話,記錄到同一個(gè)文件中;無(wú)法根據(jù)不同會(huì)話分別記錄。
優(yōu)化:
1、每次用戶登陸后,根據(jù)用戶賬號(hào)、登陸IP和登陸時(shí)間確定存儲(chǔ)文件名。這樣除非同一個(gè)用戶,同一個(gè)IP,同一時(shí)刻登陸服務(wù)器才會(huì)記錄到同一個(gè)文件中。
2、將上述設(shè)置,配置為用戶登陸后,自動(dòng)執(zhí)行
3、將日志寫(xiě)入一個(gè)隱藏目錄中。
腳本內(nèi)容:
將腳本放在/etc/profile.d/history.sh中。