Linux上天之路(十四)之Linux資料處理

2022-04-10 16:52:53 字數 2092 閱讀 6998

主要內容

常和管道協作的命令 – grep

grep:用於搜尋模式引數指定的內容,並將匹配的行輸出到螢幕或者重定向檔案中,常和管道協作的命令 – grep。

還有egrep和fgrep兩個命令。

egrep可以使用擴充套件的正規表示式

fgrep沒有元字元與普通字元的區別

grep egrep用別名加了—color之後才好理解。

grep, egrep, fgrep - print lines matching a pattern

命令語法

grep [options] pattern [file...]

命令選項

-r 遞迴

-v 反取

-i 忽略大小寫

-n 顯示行號

-c 計數

-w 匹配乙個詞

-l 只給出匹配的檔名

-l 列出不匹配的檔名

-o 只列出匹配的內容

-e 支援擴充套件的正規表示式

-q 在標準輸出中不輸出任何內容,即靜默模式

pattern

匹配字串

example

對資料夾的操作

grep -r "root" /etc 遞迴檢索/etc下所有檔案中包含root的檔案

grep -l -r "root" /etc 列出包含 root字串的檔名

grep -l -r "root" /etc 列出不包含root字串的檔名

對檔案的操作

grep "root" /etc/passwd 找出檔案中包含字串root的行

grep -v "root" /etc/passwd 找出檔案中不包含字串root的行

grep -n "root" /etc/passwd 找出檔案中包含字串root的行,並顯示行號

grep -c "root" /etc/passwd 統計檔案中包含字串root的行數

grep -w "root" /etc/passwd 匹配的字串必須是乙個完整單詞 而不是包含

grep -o "root" /etc/passwd 只顯示匹配的內容

grep -q "root" /etc/passwd 只匹配不輸出

可以使用$?來監測結果,一般指令碼中使用較多

[root@www ~]# grep -q "root" /etc/passwd

[root@www ~]# echo $?

0[root@www ~]# grep -q "root1" /etc/passwd

[root@www ~]# echo $?

cat /etc/passwd | head -2

sort - sort lines of text files

-n  按數字排序

-r 反序排序

-o 結果輸出到檔案

-t 分隔符 sort -n -t: -k3 /etc/passwd

-k 關鍵字 (按照指定列來排序)

example:

ps -a -o comm,vsz,rss,pmem |sort -nr -k 3

常和管道協作的命令 - uniq

uniq - report or omit repeated lines

-c  每行出現的次數

-d 僅顯示重複行

-u 僅顯示不重複行

-i 忽略大小寫

-f n 跳過前面n個部分 (空格分開)

-s n 跳過前面n個字元 (一般字元)

> 重定向輸入

>> 重定向追加

< 重定向輸出

<< 重定向追加輸出

linux中使用

0 代表標準輸入 stdin

1 代表標準輸出 stdout

2 代表標準錯誤輸出 stderr

把輸入輸出和重定向混合使用。

2>把標準錯誤流重定向到檔案中。

2>&1或》&把標準錯誤流與標準輸出流結合在一起。

2>>是什麼情況?

2>&1的意思是,「把標準錯誤傳送到標準輸出要去的任何位置」。

Linux上天之路(四)之Linux介面介紹

但是相對於伺服器來說,伺服器一般都是專業人員來進行維護的。linux提供了大量應用服務,且linux相對於windows來說免費且系統更加高效,所以被伺服器廣泛的應用,且因為文字介面使用記憶體較少,為了追求資源最大化,所以很多linux作業系統在安裝的時候只保留了文字介面。zhangyafei ce...

Linux上天之路(三)之Linux系統目錄

boot 存放啟動檔案 dev 存放裝置檔案 etc 存放配置檔案 home 普通使用者家目錄,以 home username的方式存放 media 移動儲存自動掛載目錄,以 media device name的方式來存放 mnt 手動掛載目錄 opt 三方軟體安裝目錄 proc 記憶體系統檔案 r...

Linux上天之路(一)之Linux前世今生

linux是乙個計算機的作業系統,與windows類似,是一款系統軟體說到作業系統其實我們首先要思考三個問題 1 作業系統是什麼?2 作業系統能幹什麼 3 作業系統和qq office又有什麼區別 作業系統是什麼?作業系統首先是乙個電腦程式,使用計算機語言開發,比如c語言 vc語言。是計算機硬體和應...