paste [options] file1 file2 將兩行貼在一起,預設使用tab鍵分開
-d 後面跟分隔符,預設使用tab鍵來分割
examples:
paste /etc/passwd /etc/shadow
cat /etc/goroup | paste /etc/passwd /etc/shadow - | head -n 3
split [options] file prefix 將大檔案拆分成小檔案
-b [b k m] 後跟要拆分的單位大小
-l 按照行數進行拆分
split -b 1000k /tmp/forp.log logs 將forp.log檔案進行拆分
cat logs* >> logs.log 將拆分出來的檔案進行合併
ls -al / | split -l 10 - lsroot 使用ls -al 輸出的資訊中,每10行記錄行程乙個檔案
重點在 - ,一般來說,如果需要stdout或stdin,但偏偏沒有檔案時,有的只是-時,那麼-就會被當成stdout或stdin
基礎的正規表示式:
1.最簡單的字串選取的功能
grep [options] '搜尋的字串' filename
-i 忽略大小寫的不同
-n 輸出行號
grep 'root' /var/log/secure
last | grep -n 'root'
cat /etc/yum.conf | grep -in 'it'
grep -n 'oo' /tmp/readme.txt ---> 檢視含有『oo』的字元 並且輸出行號
grep -n '[oo]' /tmp/readme.txt ---> 中不管有幾個字元,只代表乙個字元,所以想搜去兩個oo連續的必須採用上面的
那種方式
grep -n '[^g]oo' /tmp/readme.txt ---> 搜尋除了'goo'之外,意思就是不以g開頭的oo的字元
grep -n '[0-9]' /tmp/readme.txt ---> 搜尋所有數字
grep -n '[^0-9]' /tmp/readme.txt ---> 搜尋所有非數字(即字母和其他特殊字元)
grep -n '^\.$' /tmp/readme.txt ---> 找出必須以.開頭和以.結尾
\ ---> 轉義字元
* ---> 代表任意(0或多個)字元
. ---> 代表任意乙個字元
grep -n 'g..d' /tmp/readme.txt ---> 搜尋出g(兩位任意字元)d的單詞
grep -n 'go*d' /tmp/readme.txt ---> 搜尋出god,gd,good,goooo...d等的pattern的字元
grep -n 'o\' /tmp/readme.txt ---> 搜尋出o出現2次的單詞
grep -n 'o\' /tmp/readme.txt ---> 搜尋出o出現2至5次的單詞字元
grep -n 'o\' /tmp/readme.txt ---> 搜尋出現5次以上的單詞字元
因為{},}在shell中有特殊意義,所以必須利用「\」進行轉義
特別注意:
-> 中代表的被搜尋的乙個字元,如a[bcd] 代表ab ac ad這三種選擇
-> ls -l a* 列出所有已a開頭的檔案 (萬用字元方式)
ls | grep '^a.*' (正規表示式的方式)
-> 萬用字元的取反 [!range] 正規表示式是 [^range]
拓展正規表示式:
egrep = grep -e
examples:
grep -v '^$' /tmp/readme.txt | grep -v '^#' /tmp/readme.txt
等價於egrep -v '^$ | ^#' readme.txt
拓展正規表示式幾種常見的符號:
+ ---> 乙個或乙個以上的字元
? ---> 0個或乙個字元
| ---> or的意思
() ---> 或,二選一的,常於|連用
egrep -n 'go+' /tmp/readme.txt
egrep -n 'g0?' /tmp/readme.txt 找出g或go的字元單詞
egrep -n 'g(o|l)' /tmp/readme.txt
sed工具的介紹
可以分析標準輸入stdin的資料,然後經過處理後再將它們stdout。它有替換,刪除,新增,選定特定行等處理功能
sed [options] 動作
-n 使用安靜模式,
-e 直接在命令列模式上進行sed的操作編輯
-f 直接將sed的操作寫在乙個檔案內,-f filename,則可以直接執行filename檔案中sed操作
-r sed的操作是支援正規表示式,(預設是基礎正規表示式)
操作說明:
---> [n1[,n2]]function
a -> 新增,a後面可以接字串,而這些字串則會在新的一行內出現(當前的下一行)
c -> 替換,c後面可以跟字串,可以替換n1到n2行之間的內容
d -> 刪除,因為是刪除,所以後面是不常跟內容的
i -> 插入,後面跟字串,會出現在當前行的上一行
p -> 列印
nl /etc/passwd | sed '2,5d' 需要列印行號,並將2到5行的資料進行刪除
nl /etc/passwd | sed '2a hehejijihuhu' 在第二行之後進行內容的追加
nl /etc/passwd | sed '3i lllllljjjjj' 在第2行和3行之間新增內容
nl /etc/passwd | sed '2,4c hehehheheheheh' 將2-4行之間的內容進行替換
diff -> 比較兩個檔案的不同
diff [options] file|directory file2|directory2
-i 忽略大小寫
-b 忽略空白行的不同
-b 忽略一行中多個不同空白的差異
pr 列印預覽
pr /etc/man.config
linux學習筆記 常見命令
乙個指令可以包含多個選項,操作的物件也可以是多個。上列表中第一列字元表示文件型別,其中 表示對應的文件型別為檔案,d 表示文件型別為資料夾 mkdir 路徑名 路徑可以是資料夾名 藍色表示資料夾,綠色表示擁有全部許可權 wc lwc 需要統計的檔案的路徑 l line行數 w words數,r 表示...
linux學習筆記 常見命令
linux命令格式為 命令 選項 引數 代表可選 help可以使用help命令檢視幫助文件 例如 ls help或者ls helpmanmanual 手冊,是linux提供的乙個手冊,包含了大多數命令 可以使用man 命令來檢視命令的用法,例如man ls和很多地方的快捷鍵一樣,使用tab鍵自動補全...
linux常見命令學習筆記
一 基礎指令 ls 顯示檔案或者目錄 l list 顯示檔案的詳細資訊 a all 顯示當前目錄下的所有檔案及子目錄 mkdir 建立目錄 make directory p 建立目錄 parent cd 切換目錄 touch 建立空檔案 echo 建立帶有內容的檔案 cat 檢視檔案內容 cp co...