導航:首頁 > 操作系統 > linux查看bash

linux查看bash

發布時間:2023-02-18 14:57:27

1. 在linux中bash指的是什麼

bash shell是sh shell的增強版本,目前linux大部分使用的都是bash shell。

2. linux命令歷史

一、如何查看Linux中各個用戶的歷史操作命令

查看命令歷史用history命令,歷史命令只有在注銷的時候,才會被更新到~/.bash_history這個系統歷史命令記錄文件中;當你下次以bash登錄Linux的時候,系統會主動由當前用戶的~/.bash_history文件讀取歷史命令的記錄。

history命令用法:

history 數字

列出最近的n條命令;

history -w

將目前的歷史記憶的內容強制立即寫入~/.bash_history文件中;

history -c

將目前所有的歷史命令記錄全部清除。

二、如何將Linux系統的歷史操作命令刪除

你好,

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怎麼樣顯示命令歷史後又顯示命令的輸入時間

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:」

四、請問linux的history指令如何顯示全部的歷史記錄

history命令可以用來顯示曾執行過的命令。

執行過的命令默認存儲在HOME目錄的.bash_history文件中,可以通過查看該文件來獲取執行命令的歷史記錄。需要注意的是.bash_history不包含當前會話所執行的命令,執行過的命令在關機時才會寫入文件,除非執行命令history -w。

了解linux基礎命令,另外你是感興趣的話可以看下劉遄老師寫的《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 終端提示下,也可以使用上下方向鍵來翻閱命令歷史(向下箭頭會向前翻閱),直到找到所需命令為止。這可以很方便地編輯前面的某一條命令,而不用重復輸入類似的命令。

3. linux shell 內置命令的作用,存放在哪裡

shell的內置指令,默認狀況下bash有50多個內置命令,一般存放在/sbin, /bin, /usr/bin,這幾個目錄中。命令詳情可查看 Linux命令大全 。

4. bash(shell)命令解釋器,Linux界面介紹

Linux bash命令行:bash命令行解釋器或者翻譯官,命令行輸入命令都是由bash解釋執行的。

一、命令行

二、查詢當前登錄的用戶:

root

三、查詢當前用戶主機名:

oldboy

四、查詢當前用戶所在的路徑:

/root

五、切換用戶:

#切換到oldboy用戶

(#$是普通用戶的提示符。一般大臣,布衣。) 

oldboy

六、符號的意思

~        用戶家目錄

-          上一次所在的目錄

.         表示當前目錄

..         上一級目錄

../..      表示上一級的上一級目錄

5. Linux系統入門-Bash


Shell 是一種命令行解釋器, 其讀取用戶輸入的字元串命令, 解釋並且執行命令;它是一種特殊的應用程序, 介於系統調用/庫與應用程序之間, 其提供了運行其他程序的的介面;它可以是互動式的, 即讀取用戶輸入的字元串;也可以是非互動式的, 即讀取腳本文件並解釋執行, 直至文件結束. 無論是在類 UNIX, Linux 系統, 還是 Windows, 有很多不同種類的 Shell: 如類 UNIX, Linux 系統上的 Bash, Zsh 等; Windows 系統上的 cmd, PowerShell 等.

Bash 是 Bourne Again SHell 的縮寫, 是 GNU 計劃中的 Shell, 也是一些類 UNIX 系統與多數 Linux 發行版的默認 Shell

使用Shell可以實現對Linux系統實現絕大部分的管理,例如:

#獲取當前時間
[root@CentOS7 ~]# date
Mon Mar 15 22:59:47 CST 2021
#創建文件
[root@CentOS7 opt]# touch xcz
[root@CentOS7 opt]# ll
-rw-r--r--. 1 root root 0 Mar 15 23:01 xcz
#創建一百個文件,我們一般就會使用shell script進行創建
[root@CentOS7 opt]# cat touch.sh
#!/bin/bash
for n in `seq 100`;do
touch xcz$n &&
echo "文件xcz$n創建成功哦!"
done
[root@CentOS7 opt]# sh touch.sh

命令行輸入方式:效率較低,適用於工作量不大的工作;

shell script 腳本方式:效率高,適用於工作量大且復雜的工作。

[root@CentOS7 opt]# bash --version
GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

'#39; = 普通用戶
'#' = root用戶(超級管理員)
#查看當前用戶
[root@CentOS7 ~]# whoami
root
#查看當前命令提示符
[root@CentOS7 ~]# echo $PS1
[u@h W]$
root:當前系統的用戶
CentOS7:當前系統的主機名
~:當前所在的位置
#:超級管理員身份(root用戶)
$:普通用戶

提示符參數及含義

d :代表日期;
H :完整的主機名稱
h :僅取主機名中的第一個名字
:顯示時間為24小時格式,如:HH:MM:SS
T :顯示時間為12小時格式
A :顯示時間為24小時格式:HH:MM
u :當前用戶的賬號名稱
v :BASH的版本信息
w :完整的工作目錄名稱
W :利用basename取得工作目錄名稱,只顯示最後一個目錄名
# :下達的第幾個命令
$ :提示字元,如果是root用戶,提示符為 "#" ,普通用戶則為 "#34;

#顏色
30 40 黑色
31 41 紅色
32 42 綠色
33 43 黃色
34 44 藍色
35 45 紫紅色
36 46 青藍色
37 47 白色
PS1='[e[32;40m] [[u@h w ]$ [e[0m]'
PS1="[e[37;40m][[e[32;40m]u[e[37;40m]@h [e[36;40m]w[e[0m]]$ "
PS1="[e[37;40m][[e[32;40m]u[e[37;40m]@[e[35;40m]h[e[0m] [e[36;40m]w[e[0m]]$ "
#提示符的應用
[root@CentOS7 ~]# vi .bashrc
#最後一行下面添加
PS1="[e[37;40m][[e[32;40m]u[e[37;40m]@[e[35;40m]h[e[0m] [e[36;40m]w[e[0m]]$ "
#使用source生效
[root@CentOS7 ~]# source .bashrc

#命令 選項 參數
command [-options] [arguments]
[root@CentOS7 ~]# ls -l /opt/
#命令:整條shell命令的主體
#選項:用於調節命令的具體功能
#以'-'引導段個事選項(單個字元),例如」-l「
#以'--'引導長格式選項(多個字元),例如」--list「
#多個短格式選項可以卸載一起,只用一個」-「引導,例如」-la「
#參數:命令操作與偶的對象,如文件、目錄名等
#命令必須開頭,選項和參數位置可以發生變化

我們在使用Linux系統進行查找一個多層級的文件時,我們可以使用鍵盤上的Tab鍵進行快速補全

補全的形式有:

#如果我們忘記網路配置文件具體路徑,那麼我們就可以使用補全的形式進行配置
[root@CentOS7 ~]# vi /etc/sysconfig/
anaconda cpupower grub irqbalance moles/ rdisc selinux
authconfig crond init kmp netconsole readonly-root sshd
cbq/ ebtables-config ip6tables-config kernel network rsyslog wpa_supplicant
console/ firewalld iptables-config man-db network-scripts/ run-parts
[root@CentOS7 ~]# vi /etc/sysconfig/network
network network-scripts/
[root@CentOS7 ~]# vi /etc/sysconfig/network-scripts/if
ifcfg-ens33 ifdown-eth ifdown-post ifdown-Team ifup-aliases ifup-ipv6 ifup-post ifup-Team
ifcfg-lo ifdown-ippp ifdown-ppp ifdown-TeamPort ifup-bnep ifup-isdn ifup-ppp ifup-TeamPort
ifdown ifdown-ipv6 ifdown-routes ifdown-tunnel ifup-eth ifup-plip ifup-routes ifup-tunnel
ifdown-bnep ifdown-isdn ifdown-sit ifup ifup-ippp ifup-plusb ifup-sit ifup-wireless
[root@CentOS7 ~]# vi /etc/sysconfig/network-scripts/ifcfg-
ifcfg-ens33 ifcfg-lo
[root@CentOS7 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
#如果你的Linux系統無法進行補全,那麼咱們可以安裝一個擴展包即可
[root@CentOS7 ~]# yum install -y bash-completion

clear #或者用快捷鍵 ctrl + l
ctrl+c #有些程序也可以用q鍵退出
ctrl+z # 進程會掛起到後台
bg jobid # 讓進程在後台繼續執行
fg jobid # 讓進程回到前台
Ctrl鍵+a #將當前游標移動到命令行的行首
Ctrl鍵+e #將當前游標移動到命令行的行尾
Ctrl鍵+u #將當前游標之前的所有字元剪切
Ctrl鍵+k #將當前游標之後的所有字元剪切
Ctrl鍵+w #將當前游標之前的字元剪切,以空格為結尾
Ctrl鍵+d #退出當前會話窗口
Ctrl鍵+z #將當前前台運行的程序,放到後台運行
Ctrl鍵+r #搜索 歷史 命令
Ctrl鍵+y #粘貼剪切板上的內容
Ctrl鍵+左右方向鍵 #向指定的方向鍵移動一組字元,以空格為分隔符
ESC鍵+. #使用上一條命令的最後的參數或者路徑,以空格為分隔符,空格之後的內容,delete鍵 從前往後刪除一個字元
!命令 #執行最近的一次以該命令為開頭的命令
!! #執行上一條命令

#使用格式:
[命令] + [--help] 或者[man] + [命令] 即可
#例如touch命令幫助
[root@CentOS7 ~]# touch --help
Usage: touch [OPTION]... FILE...
Update the access and modification times of each FILE to the current time.
A FILE argument that does not exist is created empty, unless -c or -h
is supplied.
A FILE argument string of - is handled specially and causes touch to
change the times of the file associated with standard output.
Mandatory arguments to long options are mandatory for short options too.
-a change only the access time
-c, --no-create do not create any files
-d, --date=STRING parse STRING and use it instead of current time
-f (ignored)
-h, --no-dereference affect each symbolic link instead of any referenced
file (useful only on systems that can change the
timestamps of a symlink)
-m change only the modification time
-r, --reference=FILE use this file's times instead of current time
-t STAMP use [[CC]YY]MMDDhhmm[.ss] instead of current time
--time=WORD change the specified time:
WORD is access, atime, or use: equivalent to -a
WORD is modify or mtime: equivalent to -m
--help display this help and exit
--version output version information and exit
Note that the -d and -t options accept different time-date formats.
GNU coreutils online help:
For complete documentation, run: info coreutils 'touch invocation'

6. linux下怎麼查看.bash

Linux系統默認開啟的終端,一般都是Bash Shell,可以通過如下命令確定當前運行的默認Shell。
echo $SHELL

說明:個人系統是Redhat Enterprise server5,默認使用的shell即為bash shell。

如果系統默認使用的不是bash shell,可以通過bash命令運行bash shell。

說明:圖中隨便輸入的命令,目的是讓shell執行出錯,通過出錯信息來確定bash命令是否成功執行。在bash中如果找不到命令開頭一定是"bash: "之類的信息。 通過上圖即可知道要運行bash shell,只需要執行bash命令即可。

7. 如何在Linux或macOS終端中使用Bash歷史

Bash是Linux系統(包括MacOS)默認的shell,它也可以安裝在Windows 10上,Bash shell可以保存你運行過的命令的歷史記錄,並將它們保存在歷史文件中。Bash在運行時,會將內部命令列表保存在內存中,在退出時會寫入bash歷史中。

實時保存

Bash在運行時,會將內部命令列表保存在內存中,在退出時會寫入.bash_history中。如果你想確保它們總是實時寫入,你可以將該命令放入PROMPT_COMMAND變數中:export PROMPT_COMMAND='history -a'

設置歷史存儲默認值

在我們開始使用bash history之前,我們可以修改一些bash的設置來讓他更好使用。Bash允許我們修改它在歷史中存儲的先前命令的數量。

有兩種不同的方式處理:HISTFILESIZE 參數配置歷史文件中存儲了多少個命令,而HISTSIZE控制當前會話存儲在內存中的數量。

用 nano ~/.bashrc

打開~ /.bashrc文 在編輯器中更改這些設置:

找到HISTSIZE和HISTFILESIZE這兩個參數。如果它們已經被設置過來,就修改這些值。如果這些參數還沒有出現,只需添加它們。出於我們的目的,我們可以輕松地將1000行存儲到磁碟,並將最後的500行載入到內存中。對於大多數系統,這是一個保守的估計,但是如果你覺得對性有的影響,可以進行調整:

修改後使用快捷鍵Ctrl+O保存,回車寫入,Ctrl+X退出到nano。

默認情況下,bash在每個會話結束時寫入其歷史記錄,並覆蓋以前存在的文件。這意味著如果你使用多個bash會話登錄,只有最後一個bash窗口退出才會保存其歷史記錄。

使用快捷鍵

為了查看我們最後運行的bash命令,我們可以使用許多擊鍵來獲得優勢並節省時間。

下箭頭或Ctrl+N:轉到下一個命令。多次點擊將顯示我們上次運行的命令。

向上箭頭或Ctrl + P:轉到上一個命令。

多次敲擊相同的按鍵將通過我們使用的命令向後移動。

Alt + R:這也稱為反向搜索,並且很有用。

當你只記你之前輸入的命令的零散部分時候,這會很有幫助,有的系統是Ctrl+R
如圖所示,''被搜索,bash尋找歷史記錄中最後與之相匹配的命令。

查看bash歷史記錄

查看命令的歷史很容易,直接運行history命令。

我們可以使用grep命令來縮小搜索范圍。

我們甚至可以通過tail命令來查看最近五次使用的命令。

或者,我們甚至可以截斷tail命令,並簡單地傳遞我們想要查看的命令的數量。

從bash history中執行第n個命令

將整個bash歷史顯示出來很不錯,但它並不能幫助我們輕松訪問這些命令,除非作為參考。如果我們想要執行bash歷史記錄中的第n個命令,比如第15個命令,輸入 !15就會立即回顧並執行與歷史記錄第15個關聯的命令。

特別提示

現在我們很好地了解了如何利用bash提供的歷史操作,其中的某些方法很有效。

當我們需要找到某條命令的位置,如果知道bash具有這樣操作命令就非常方便了。
熟練掌握上面的命令可幫助我們提高工作效率喲!

閱讀全文

與linux查看bash相關的資料

熱點內容
excel表格單列數據加密 瀏覽:646
給同事的解壓話語 瀏覽:990
linux關閉網卡命令行 瀏覽:452
史上最漂亮程序員 瀏覽:768
java實現excel的導入 瀏覽:758
光遇賬號如何轉移安卓 瀏覽:266
5分之13除以26的演算法 瀏覽:342
蘭州安寧區買解壓包子 瀏覽:641
php接收圖片代碼 瀏覽:668
hci命令 瀏覽:662
福建伺服器大區雲空間 瀏覽:840
筆桿子程序員 瀏覽:745
手機軟體易驗證加密 瀏覽:589
文檔加密只讀模式也不能看到 瀏覽:431
把jpg轉換成pdf的軟體 瀏覽:874
linuxeth0mac 瀏覽:192
windows編程知乎 瀏覽:442
壓縮工期超過40 瀏覽:249
Android怎麼優化內存 瀏覽:106
linuxetcsysconfig 瀏覽:396