歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux常見基礎命令總結(三)

Linux常見基礎命令總結(三)

日期:2017/3/3 11:49:41   编辑:Linux技術

Linux的bash:

1. 檢查命令是否為bash的內置命令:type [-tpa] command

t :當加入-t時type會將command以下列的字眼顯示出它的意義:

file:外部命令

alias:該命令是某一命令設置的別名

builtn:該命令是bash的內置命令

p:如果後邊接的是外部命令,就顯示完整文件名

a:會從PATH變量定義的路徑中,將所有含有command的命令都列出來

2. bash中變量的顯示和設置:(顯示變量)eccho $變量名

(設置變量)變量名=變量值

變量的設置規則:變量和變量值以一個=連接

等號兩邊不能直接接空格符

變量名稱只能是英文字母和數字,而且不能以數字開頭

變量內容若有空格符可以使用雙引號” “或者單引號’ ‘將變量內容結合起來:

雙引號裡邊有特殊字符的可以保留原來的本意

單引號裡邊的特殊字符僅僅是一般字符(純文本)

可以使用轉義字符” \ “將特殊字符轉換成為一般字符

在一串命令中還需要通過其他命令提供的信息,可以使用反單引號“ `命令` ”或者是“$(命令)”這樣的方式來引用

若該變量為了增加變量內容時,則可以使用”變量名稱"或者是變量名稱"或者是{變量}的方式來累加內容

若要使變量在其子進程也能使用,則需要使用export命令來將其轉換乘為環境變量

通常大寫字符為系統默認變量,自定義變量為小寫字符

取消變量可以使用unset命令:

unset 變量名稱

3. 列出當前shell環境下的所有環境變量和內容:evn

或者是

export

4. 變量內容的刪除: 變量的刪除主要是通過#和##以及通配符*來解決的

#:符合替換文字的最短的一個

##:符合替換文字的最長的一個

%:從後邊開始匹配要刪除的字符的最短的一個

%:從後邊開始匹配要刪除的字符的最長的一個

*:代替0到無窮多個任意字符

例如:

命令解釋:

刪除了從最開始一直到usr/sbin:這個內容的變量值。path是要操作的變量名,後邊加一個#比哦啊是替換符合文字的最短的一個,後邊就跟上要刪除的變量值,其中用*代替任意多個字符,一直到user/sbin:這個內容為止。

5. 變量內容的替換:變量內容額替換主要是通過/和//來完成

/:若變量內容符合舊字符串,則第一個舊字符串會被替換

//:若變量內容符合舊字符串,則全部的舊字符串會被替換掉

例如:

6. 別名設置:

(設置別名)alias 命令別名 命令

(取消別名)unalias 別名

alias lm=’ls -l | more’

這樣之後執行lm命令時就相當於執行ls -l 和more命令

7. 歷史命令:history

history [-c]

history [-raw] histfiles

n:數字,要列出的最近的n條命令

- c:將目前shell中的所有history都刪除

- a:將目前新增的history增加到histfiles中

- r: 將histfiles中的命令讀到當前shell的緩沖中

- w:將目前的history中的內容寫到histfiles中

8. 數據流重定向:標准的輸入:代碼為0,使用<或者<<

標准的輸出:代碼為1,使用>或者>>

標准的錯誤輸出:代碼為2,使用2>或者2>>

>和>>的區別在於在寫入數據時>會自動覆蓋文件中的已有數據,而>>則是以追加的方式寫入

例如:

9. 命令執行判斷依據:

cmd ; cmd

;:依次執行兩個不相關的命令

或者

cmd && cmd

cmd || cmd

命令執行情況說明cmd1 && cmd2若cmd1執行完畢並且正確執行,則開始執行cmd2若cmd1執行完畢且錯誤,則不執行cmd2cmd1 |||| cmd2若cmd1執行完畢並且正確執行,則不執行cmd2若cmd1執行完畢且錯誤,則開始執行cmd210 . 管道命令:(用於分割字符)cut -d ‘分割字符’ -f fields

(用於排列整齊的信息) cut -c 字符范圍

d:後邊接分割字符,與-f一起使用

f:依據-d後邊的分割字符將一段信息切割成數段,並用-f取出第幾段

c:以字符的單位取出固定字符區間

或者:

grep [-acunv] [–color=auto] ‘查找字符串’ filename

a:將二進制文件以txt的方式查找數據

c:計算找到字符串的次數

i:忽略大小寫不同

n:順便輸出行號

v:反向輸出,即輸出不包含要查訊字符串的那一行

color=auto:將找到的關鍵字部分加上顏色區分

Linux的正則表達式與格式化處理:

1. 基礎正則表達式:RE字符意義^word待查找的字符串(word)在行首word$待查找的字符串(word)在行尾空格代表一個有一定意義字符的字符\轉義字符,將特殊字符的意義去掉*重復0到無窮多個的前一個字符[list]從字符集合的RE字符中找出想要選取的字符[n1-n2]從字符集合的RE字符中找出想要選取的字符范圍[^list]從字符集合的RE字符中找出不要的字符或者范圍\{n,m\}連續n到m個的前一個RE字符,若為\{n\}則是連續n個的前一個RE字符,若為\{n,\}則是連續n個以上的前一個RE字符2. sed工具:

sed [-nefr] [動作]

n:使用安靜模式,只有進過sed處理的那一行才會被列出

e:直接在命令行的模式上進行sed編輯

f:直接將sed的命令寫在一個文件內,-f filename可以直接執行filename內的sed動作

r:sed的動作支持的是拓展型的正則表達式的語法

i:直接修改文件讀取的內容而不是屏幕輸出

動作:[n1[,n2]]function

function參數:

a:新增,a的後邊可以接字符串,而這些字符串會出現在新的一行

c:替換,c的後邊可以接字符串,這些字符串可以替換n1,n2之間的行

d:刪除

i:插入,i的後比那也可以接字符串,而且字符串會出現在新的一行

p:打印,將某個選擇的數據打印出來

s:替換,可以直接進行替換的工作

3. 拓展的正則表達式:RE字符意義+重復一個或者一個以上的前一個RE字符?零個或者一個的前一個RE字符|用或的方式找出數個字符串()找出組字符串()+多個重復組的判別4. 文件格式化打印:

printf ‘打印格式’ 實際內容

\a:警告聲音輸出

\b:退格鍵

\f:清除屏幕

\n:輸出新的一行

\r:Enter鍵

\t:水平的Tab鍵

\v:豎直方向的Tab鍵

\xNN:NN為兩位數的數字,可以將其轉換成為字符

5. awk:awk ‘條件類型1 {動作1} 條件類型2 {動作2} 條件類型3 {動作3}….’ filename

Copyright © Linux教程網 All Rights Reserved