新聞中心
Linux技巧 涉及Linux系統(tǒng)的各種實際問題,其中過濾之一行內容是其中一個經常需要處理的問題。對于那些對Linux系統(tǒng)不熟悉或只是新手的人來說,此任務可能會顯得很棘手。但是,使用Linux的過濾器,要過濾之一行內容其實很容易。下面就介紹一些簡單、快速的方法。

我們提供的服務有:成都做網(wǎng)站、網(wǎng)站建設、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、石泉ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的石泉網(wǎng)站制作公司
之一種方法:使用tl -n+2
Tl 是一種非常優(yōu)秀的Unix/Linux命令,用于查看文件的末尾幾行內容。在過濾之一行的情況下,使用tl命令是相當簡單和快速的。使用tl -n+2命令閱讀文件內容,并略過之一行。這意味著,您可以在使用tl命令時,指定任意數(shù)目的行。
$ tl -n+2 file.txt
你可以將“file.txt” 替換成您要過濾的文件名。如果您想將過濾出的內容輸出到終端屏幕上,而不是將它們保存到新文件中,則可以使用下面的命令。
$ tl -n+2 file.txt | less
這將在終端中顯示命令輸出的內容。less命令將啟動類似于vim編輯器的交互式屏幕,可以自由瀏覽過濾后的內容。
第二種方法:使用awk
awk是一種強大的文本處理工具。如果您使用過它,那么您可能知道awk可以輕松地過濾之一行。請觀察以下命令。
$ awk ‘NR > 1’ file.txt
如果您想將過濾出的內容保存到新文件中,可以使用下面的命令。
$ awk ‘NR > 1’ file.txt > newfile.txt
此命令將僅保存file.txt中的第二個及其后面的所有行,新文件將被命名為newfile.txt,并將其保存在當前目錄中。
第三種方法:使用sed
Sed是另一種在Linux系統(tǒng)中廣泛使用的文本處理工具。使用它來過濾之一行內容也是一個很好的選擇,而且不需要什么復雜的命令。下面是一個簡單的命令,使用sed過濾之一行。
$ sed -n ‘2,$p’ file.txt
這將略過文件的之一行,并輸出文件的其余部分。如果您想將過濾出的內容保存到新文件中,而不是輸出到終端,則可以使用下面的命令。
$ sed -n ‘2,$p’ file.txt > newfile.txt
這將創(chuàng)建一個名為newfile.txt的新文件,其中僅包含第二行及其后面的所有內容。
結論:
這三種方式都是過濾之一行的好方法,根據(jù)您的需要選擇。有些工作對于每天使用Linux的人來說可能會變得無聊和模擬,但實際上,這些任務可能會更快地通過掌握這些簡單的技能和方法來完成工作。如果您是一個新手,在Linux系統(tǒng)中執(zhí)行各種任務時,這些技巧無疑會讓您輕松自如。
相關問題拓展閱讀:
- linux三劍客的基本使用——grep、sed、awk
- shell grep 的結果只取之一行
- Linux:如何用管道查看一個文件從第二行到最后一行的所有行(除之一行)
linux三劍客的基本使用——grep、sed、awk
grep、sed、awk是linux功能非常強大的三個命令,grep是查找過濾文本,sed是對文本進行編輯替換,awk是對文本進行分析報告。
最簡單的理解就是找什么東西用grep,想修改什么內容用sed,想格式化內容用awk。
創(chuàng)建一個文件名為grep_text.txt的文件,并放入內容:
SillyMadman is both a madman and a fool.
Everyone agrees with this sentence.
我要查找在grep_text.txt文件里有Silly的行
命令是: grep Silly grep_text.txt
會返回內容:SillyMadman is both a madman and a fool.
也可以帶以下參數(shù),這些我認為可能容易用到的參數(shù),其它的參數(shù)需要另行查找
文檔,比如可以使用正則進行匹配。
內容相關的
-B, –before context=NUM顯示所在行之前的行數(shù)
-A, –after context=NUM顯示所在行之后的行數(shù)
-C, –context=NUM打印輸出上下文的行數(shù)
過濾內容相關的參數(shù):
-i, –忽略大小寫區(qū)分
-w,–匹配查找的整個單詞
-x,–匹配查找的整行文本
-v, –過濾掉匹配的內容
輸出內容相關的參數(shù)
-n, –行號打印帶有輸出行的行號
比如,我要查找在grep_text.txt文件里不區(qū)分大小寫查找sillymadman,并顯示行號和匹配文本純此的下一行,那么我可以用以下命令查找
grep sillymadman grep_text.txt -i -n -A1
內容返回為
1:SillyMadman is both a madman and a fool.
2-Everyone agrees with this sentence.
總體而言grep的使用方式就是
grep (查找的內容) (文件名)
grep也經常搭配管道符號做弊迅”|”使用,比如我要查詢某程序的進程,并去掉查找進程本身,那么命令為
ps -ef | grep program_name | grep -v grep
再創(chuàng)建一個文件名為sed_text.txt的文件,并放入內容:
SillyMadman is both a madman and a fool.
Everyone agrees with this sentence.
我想要在之一行下面添加一句:woshishazi
命令是:sed ‘1a\woshishazi’ sed_text.txt
返回內容為:
SillyMadman is both a madman and a fool.
woshishazi
Everyone agrees with this sentence.
但是以上這個命令不會修改原文件,如果需要,需要加上-i
sed -i ‘1a\woshishazi’ sed_text.txt
上面a是代表append,從指定行后面新的一行添加數(shù)據(jù),還有其他操作
操作有以下這些
a :從下面一行新增
i :從上面一行插入,
d :刪除
c :整行替換
p :打印
s :對指定內容進行替換
下面稍卜晌微舉下例:
a: sed ‘1a\woshishazi’ sed_text.txt 從之一行后面添加
i: sed ‘1i\woshishazi’ sed_text.txt 從之一行前面插入
d: sed ‘1d’ sed_text.txt 刪除之一行
c: sed ‘1c\woshishazi’ sed_text.txt 替換之一行內容為woshishazi
p: sed -n ‘1p’ sed_text.txt 打印之一行,一般搭配-n使用,其他內容就不會再展示
s:這個相對復雜一點需要詳細說明一下
sed的參數(shù)為 ‘s/要被替換的內容/新的內容/g’
行是一個可選項,可以選擇具體的行進行替換
g代表替換所有匹配到的內容,也可以改為數(shù)字,表示第幾次匹配到時進行替換
sed ‘s\SillyMadman\shafengzi\g’ sed_text.txt ,將所有SillyMadman替換為shafengzi
輸出結果為:
shafengzi is both a madman and a fool.
Everyone agrees with this sentence.
最后再創(chuàng)建一個文件名為awk_text.txt的文件,并放入內容:
1 a
2 b
3 c
4 d
5 f
以空白符作為
分隔符
這個文本相當于每一行有兩個字段。
那么打印之一個字段時 awk ‘{print 0的話,則代表打印所有字段
awk默認以空白符作為分隔符,也可以指定分割符通過-F
awk -F: ‘{print $1}’ awk_text.txt,以“:”作為作為分隔符
那么返回內容就為
1 a
2 b
3 c
4 d
5 f
相當于只有一列或者說一個字段
然后還可以對前面加上一個正則對行進行匹配內容
awk ‘/a/{print 2 ~ /a/){print $1}’ awk_text.txt
返回內容為
shell grep 的結果只取之一行
可以使用head -1 命令來只取grep到的數(shù)據(jù)的之一行。
例如一個文本文檔a.txt內容是:
北京是我們的首都
北京天安門坐落在中華人民共和國首都北京市的中心
我在北京天安門廣場吃炸雞
使用命令 cat a.txt |grep 北京 | head -n 1 可以只取到之一行的數(shù)據(jù)
北京。
擴展資料
Linux中head命令詳解:
head命令與tail命令用法相似,head命令用于查看文檔的開始指定數(shù)量派睜的字符塊,默認顯示文檔的前 10 行,如果給定的文件不止一個,則在顯示的每個文件前面加一個文件名標題。
1、grep命令用法格式
head 【參數(shù)】【文件】
2、命令選項
-c, –bytes=K k,顯示文檔開始的前k個字節(jié),-k,不族世顯示文檔結尾的最后 k 個字節(jié)
-n, –lines=K k,顯示文檔開始的前k行,-k,不顯示文檔結尾的最后 k 行
-q, –quiet, –silent 不顯示包含給定文件名的文件頭
-v, –verbose 總是顯示包含給定文件名的文件頭
–help顯示此幫助信塵穗歲息并退出
–version 顯示版本信息并退出
3、實例
#顯示前5行
head -n 5 head.txt
#顯示前5個字節(jié)
head -c 5 head.txt
用head命令
grep *.*|head -n 1
或
Linux:如何用管道查看一個文件從第二行到最后一行的所有行(除之一行)
用sed工具配合正則表達式虛指塵實現(xiàn),單引號內就是差禪正則
# sed -n ‘2,$p’ /etc/passwd
或
# cat /etc/passwd | sed -n ‘2,$p’
-n 僅輸出符合條件的行逗納
p 打印內容
2,$ 第2行到最后一行。
建議你去查找sed工具的使用方法和正則表達式,熟悉正則表達式的元字符
祝你好運~~~
1、高雹攜awk ‘{if(NR!=1) print }’ filename
2、cat filename | tail -n +2
3、戚伏肆鏈 cat file|sed -n ‘2,$p’
這三種都可以~~~
sed -n ‘2,$p’ a.txt
關于linux 過濾之一行的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都網(wǎng)站推廣找創(chuàng)新互聯(lián),老牌網(wǎng)站營銷公司
成都網(wǎng)站建設公司創(chuàng)新互聯(lián)(www.cdcxhl.com)專注高端網(wǎng)站建設,網(wǎng)頁設計制作,網(wǎng)站維護,網(wǎng)絡營銷,SEO優(yōu)化推廣,快速提升企業(yè)網(wǎng)站排名等一站式服務。IDC基礎服務:云服務器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經驗、服務器租用、服務器托管提供四川、成都、綿陽、雅安、重慶、貴州、昆明、鄭州、湖北十堰機房互聯(lián)網(wǎng)數(shù)據(jù)中心業(yè)務。
分享名稱:Linux技巧:如何有效過濾之一行內容? (linux 過濾之一行)
瀏覽路徑:http://m.5511xx.com/article/ccisccp.html


咨詢
建站咨詢
