linux(六)之文字操作

2022-02-18 08:18:02 字數 2675 閱讀 4083

接下來我們一起來看一下再linux中怎麼去對文字進行操作的

既然要操作文字,所以我們要對文字有乙個了解,那什麼是文字檔案呢。

文字檔案是一種由若干行字元構成的計算機檔案。文字檔案存在於計算機檔案系統中。通常,通過在文字檔案最後一行後放置檔案結束標誌來。

文字檔案通常有系統配置檔案,網頁,程式源**等等。

1)命令格式:cat filename(s)

2)命令說明:將檔案的內容顯示到螢幕上

3)將檔案內容進行重定向到其他檔案或者裝置中。例如:cat /etc/passwd > a.txt

4)拓展

命令格式:cat /etc/passwd | awk -f: '

' | sort > ~/userinfo

命令說明:

awk:處理文字程式,以行為單位來處理文字

-f指定分隔符

注意:-f和分隔符之間沒有空格

'':列印語句的固定格式

$1"\t" $6$1

:分割後的第1個部分

$6:分割後的第6個部分

\t:製表符

\n:換行符

\:續行符

sort:排序 ascii碼進行排序

a:97a:

65

cat可以同時顯示多個檔案到螢幕中

cat /etc/passwd     /etc/group
將多個檔案拼接成乙個大的檔案

cat /etc/passwd /etc/group > cat.txt
1)cat   /dev/null > cat.txt

/dev/null :unix中的黑洞檔案。放不進去東西,拿不出來東西。

作用:用來清空檔案 

2)> cat.txt

命令格式:more filename(s)

命令說明:顯示檔案內容到螢幕上,但是一屏內容滿了之後會暫停下來。此時可以通過其他功能鍵進行檢視。

命令格式:head [-n] filename(s)

命令說明:顯示某個檔案的前n行,如果沒有選項-n(n是乙個具體的數值),則預設顯示前10行。

具有和head命令相類似的功能,不同的是從顯示某個檔案尾部的行。

舉例:顯示/etc/passwd檔案的倒數第五行到倒數第十行的內容

tail -10 /etc/passwd | head -5
讀取檔案中的內容,按行排序。

讀取管道中的內容,按行排序。

可以加選項「-u」,表示重複行(相同並且相鄰則視為重複行)只顯示一次。

舉例:提取系統中所有的使用者名稱,按使用者名稱(行)排序。

cat /etc/passwd | awk -f: '

' | sort -u

清除檔案或者管道中的重複行

注意:這裡是指把檔案中的重複行刪除,只是我們檢視的時候,把重複行給去掉了。

比較並顯示兩個檔案的不同之處

命令格式:diff [-u] filename1 filename2

//

file1.txt

i need to run the laundry.

i need to wash the dog.

i need to

getthe car detailed.

i need to

dothe laundry.

i need to wash the car.

i need to

getthe dog detailed.

我們使用diff比較他們的不同:

diff file1.txt file2.txt

輸出如下結果:

2,4c2,4

< i need to get

the car detailed.

---> i need to do

the laundry.

>i need to wash the car.

> i need to get the dog detailed.

分析:我們來說明一下該輸出結果的含義,要明白diff比較結果的含義,我們必須牢記一點,diff描述兩個檔案不同的方式是告訴我們怎麼樣改變第乙個檔案之後與第二個檔案匹配。我們看看上面的比較結果中的第一行 2,4c2,4 前面的數字2,4表示第乙個檔案中的行,中間有乙個字母c表示需要在第乙個檔案上做的操作(a=add,c=change,d=delete),後面的數字2,4表示第二個檔案中的行。

2,4c2,4 的含義是:第乙個檔案中的第[2,4]行(注意這是乙個閉合區間,包括第2行和第4行)需要做出修改才能與第二個檔案中的[2,4]行相匹配。

接下來的內容則告訴我們需要修改的地方,前面帶 < 的部分表示左邊檔案的第[2,4]行的內容,而帶》 的部分表示右邊檔案的第[2,4]行的內容,中間的 --- 則是兩個檔案內容的分隔符號。

顯示命令後面的內容到螢幕上

錄屏命令,該命令會執行之後會將控制台上所有從該命令之後的輸入和輸入全部顯示到指定的檔案中。

可以加選項「-a」,表示追加到檔案中。

錄屏結束之後使用「exit」命令或者ctrl+d退出錄屏。

linux下的文字操作之 文字查詢 grep

摘要 你有沒有這樣的應用場景 除錯乙個程式,出現debug的提示資訊,現在你需要定位是哪個檔案包含了這個debug資訊,也就是說,你需要在乙個目錄下的多個檔案 可能包含子目錄 中查詢某個字串的位置 另外,有時候,乙個程式崩潰,我們需要通過程序控制將其殺死,如何快速找到程序號並殺死程序。本文所講的gr...

Linux常用文字操作

1.最常用的head和tail head和tail分別顯示檔案的頂部和底部,要檢視文字的頂部幾行或底部幾行,需要分別使用這兩個命令加 n選項標誌 head和tail的基本用法 head n10 untitled.txt tail n10 untitled.txt tail命令常見的用途就是觀察日誌檔...

linux文字操作(vi vim)

什麼是 vim?vim是從 vi 發展出來的乙個文字編輯器。補完 編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用。簡單的來說,vi 是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。vim 則可以說是程式開發者的一項很好用的工具。連 vim 的官方 自己也說 v...