搜尋
首頁運維安全bash基礎特性是什麼

bash基礎特性是什麼

May 14, 2023 pm 11:07 PM
bash

#bash基礎特性之命令別名
bash在shell進程中可以為指令本身或指令加上選項設定別名,設定後可以直接輸入別名的方式呼叫其功能。
設定指令別名的方式為:~]# alias NAME=COMMAN。
撤銷指令別名的方式為:~]# unalias NAME
查看目前bash中已經設定的指令別名方式為:~]# alias
注意1:此方式設定的指令別名生命週期只是當前shell進程。退出目前shell再登陸即已經失效。若要在shell啟動後自動生效,需要設定bash的環境變數相關設定檔。
注意2:如果指令別名和指令名相同,則直接呼叫別名定義的指令其功能。如需直接呼叫該指令本身功能而非別名,可使用「~]# \COMMAND。

##bash基礎特性之指令歷史
bash在shell進程會自動儲存其會話中使用者曾經執行過的命令,在shell運行中該記錄存儲在內存空間中,shell進程結束時通過將其存儲在“歷史文件”來持久保存先前執行過的命令,每次shell進程啟動都會讀取該檔案內容到記憶體空間中,每個使用者都有自己專用的歷史檔案。
歷史相關參數的變數
HISTSIZE:SHELL程序的緩衝區保留的歷史指令的條數
~]# echo $HISTSIZE 可查看其大小
~]# export HISTSIZE=# 可設定其大小
HISTFILESIZE:命令歷史檔案可儲存的歷史指令的條數
~]# echo $HISTFILESIZE 可查看其大小
~]# export HISTFILESIZE=# 可設定其大小
HISTFILE:目前使用者的命令歷史檔案
~]# echo $HISTFILE 可查看檔案名稱和位址
HISTCONTROL:目前使用者記錄指令歷史的方式
~]# echo $HISTCONTROL 可查看檔案名稱和位址
~]# export HISTCONTROL=方式名可設定記錄指令歷史的方式
共有三種方式:
ignoredups:忽略重複的命令;重複是指連續且相同的命令;
ignorespace:以空白字元開頭的命令不記入歷史;
ignoreboth:上述兩者同時生效;
查看和管理命令歷史的相關指令
查看指令歷史清單:~]# history 
指令用法:
history -c:清除指令歷史;
history -d:OFFSET:刪除指定的條目;
-a        將目前緩衝的歷史行追加到歷史文件中
-n        從歷史文件中讀取所有未曾讀取的行
-r        讀取歷史文件上在上的內容中讀取至歷卷#呼叫指令歷史列表中的指令以重執行之目的:
!#:再一次執行歷史清單中的第#條指令;
!!:再一次執行上一條指令;
!STRING :再一次執行指令歷史清單中最近一個以指定的STRING開頭的指令;
                
#呼叫上一條指令的最後一個參數:
快速鍵:ESC,兩個鍵)
     Alt .(同時按下這兩個鍵)
     !$:給定的上一個指令的參數
              ”#        
##bash基礎特性之快速鍵 
Ctrl a:遊標跳至命令列首;
Ctrl e:遊標跳至命令列尾;

Ctrl k:刪除遊標所在處至尾部的內容;

Ctrl u:刪除行首至遊標所在處的內容;



##bash的特性之命令列展開:
把命令列的給定的特殊符號自動替換為對應字串的機制;
~: 自動替換為使用者家目錄;
~USERNAME:自動替換為指定使用者的家目錄;

{ }:可承載一個以逗號分隔的路徑列表,能夠將其展開為多個獨立路徑;

範例:/tmp/{x,y,z} = /tmp/x  /tmp/y  /tmp/z
範例:/tmp/{ x/y, m/{m,n}} = /tmp/x/y /tmp/m/m /tmp/m/n
範例:/tmp/{x,y}/z = /tmp/ x/z  /tmp/y/z 


#

#bash的基礎特性:命令補全和路徑補全
命令補全:
shell程式在接收到用戶執行命令補全的請求後(單擊Tab),最左側字符串將被當作指令去查找;
其查找機制:
    1):找出內部
    2):找出外部指令:去$PATH變數所指定的各路徑下,自左而右逐個搜尋各目錄下的檔名;
查找完成後,給定的打頭的字串如果能惟一標識某指令程式檔的檔名,則直接自動補全為該指令,不能惟一標識,再擊tab可給予清單;如果或沒有反應則表示錯誤,沒有任何指令可被此打頭字串標識;
路徑補全:
在給定的起始路徑的上級目錄下,以對應路徑下的打頭字串來逐一匹配上級目標下的每個檔案:如果是惟一標識,Tab補全;不能惟一標識:tab, tab給出列表;錯誤路徑:沒有回應。

#bash的特性之glob
glob:檔案名稱通配;快速引用多個檔案;檔案名稱整體匹配度偵測
*:符合任意長度的任意字元
? :符合任意單一字元
[ ]:符合指定集合內的任一字元 
[a-z]:表示所有的字母,不區分大小寫
[0-9]:表示所有數字
[a-z0-9]:所有字母加上數字
[[:upper:]]:所有大寫字母
[[:lower:]]:所有小寫字母
[[:digit:]] :所有數字
[[:alpha:]]:表示所有字母
[[:alunm:]]:表示所以字母加數字
[[:space:]]:表示空白字元
[[:punct:]]:表示所有標點符號
[^ ]:取反

以上是bash基礎特性是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用