Linux課程學習筆記來源於網易雲課堂:Linux 入門基礎
1 文件瀏覽
cat 查看文件內容
more 以翻頁形式查看文件內容
less 以上下翻頁形式查看文件內容
head 查看文件的開始10行(或指定行數)
tail 查看文件的最後10行(或指定行數)
2 基於關鍵字搜索
grep 基於關鍵字進行文本搜索
grep 'linuxcast'/etc/passwd // 在/etc/passwd 中搜索linuxcast項,單個單詞不需要單引號或雙引號
find / -userlinuxcast | grep Video //在根目錄(/)下用戶linuxcast用戶的文件,將信息傳遞給grep
grep的常用參數:
-i 在搜索時忽略大小寫
-n 顯示結果所在行數,方便下次修改或查看
-v 輸出不帶關鍵字的行,進行排除輸出
-Ax (A=after)在輸出的時候包含結果所在行之後的指定行數
-Bx (B=before)在輸出的時候包含輸出結果前幾行:-B3 輸出結果前3行
3 基於列處理文本
cut -d: -f1 /etc/passwd // 修剪指定列,顯示passwd到位第1列,指定分隔符是‘:’
grep linuxcast /etc/passwd | cut -d: -f3 //輸出 /etc/passwd中含有linuxcast的信息,指定分隔符是:,並顯示第3列
參數說明:
-d 指定分隔符(默認是TAB)
-f 指定輸出列
-c 基於字符進行切割:cut -c2-6 /etc/passwd //
4 文本統計
wc用於統計文本信息:
-l 只統計行數
-w 只統計單詞
-c 只統計字節數
-m 只統計字符數
5 文本排序
sort命令對文本內容進行排序,僅對英文排序,默認是單詞的首字母
-r 進行倒序排序
-n 基於數字進行排序
-f 忽略大小寫
-u 刪除重複行
-t c 使用c作爲分隔符分割爲列進行排序
-k x 當進行基於指定字符分隔爲列的排序時,指定基於那個列排序
6 刪除重複行
命令sort -u 刪除重複行
unip用以刪除重複的相鄰行 cat linux | uniq
7 文本比較
diff linux linux-new 比較兩個文件的區別
常用參數:
-i 忽略大小寫
-b 忽略空格數量的改變
-u 統一顯示比較信息[一般用以生成patch文件(補丁文件)]
diff -u linux linux-new > final.patch
8 拼寫檢查(系統沒有安裝,通過sudo yum install aspell進行安裝)
命令aspell用以顯示檢查英文拼寫
aspell check linuxcast
aspell list < linuxcast
9 處理文本內容(原文件的內容不變)
命令tr用來處理文本內容
1)刪除關鍵字:
tr -d 'apple' < linux //以重定向的形式
2)轉換大小寫:
tr 'a-z' 'A-Z' < linux
10 搜索替換
sed用以搜索並替換文本:
1) sed ‘s/linux/unix/g’ linuxcast //對linuxcast文件進行搜索,將其中的linux替換成unix,g的作用是如果一行中出現多個匹配項,則都進行匹匹配。如果不加g,僅替換該行的一個匹配項。
2) 通過參數-e可以進行匹配多個:sed –e ‘s/linux/unix/g’ –e ‘s/nash/nash_su/g’ linuxcast
3) sed'1,20s/linux/unix/g' 代表只替換1到20行
4) sed –f sededit linuxcast //將存有替換表達式的sededit文件對linuxcast執行替換操作,例如,先將以下表達式寫成一個文件sededit,然後再調用sed –f sededit linuxcast:
s/mi/my/g
s/ore/are/g