新聞中心
linux是一類UNIX操作系統(tǒng)的統(tǒng)稱,它的發(fā)展是為了實現(xiàn)計算機網(wǎng)絡(luò)的安全性,擴展性和易于使用等。由于Linux的多用戶、多任務(wù)特性,它已成為服務(wù)器、嵌入式設(shè)備和應(yīng)用開發(fā)中的操作系統(tǒng)。

創(chuàng)新互聯(lián)公司是專業(yè)的思茅網(wǎng)站建設(shè)公司,思茅接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行思茅網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
Linux常常需要處理大量重復(fù)行的文本文件,例如通過網(wǎng)絡(luò)搜索引擎數(shù)據(jù)收集的數(shù)據(jù)結(jié)果,或者剪貼板里的內(nèi)容。比如,如果文本文件中的重復(fù)行可能會引起后續(xù)工作或操作的錯誤,那么刪除重復(fù)行就成為必要的工作,Linux系統(tǒng)提供了一系列自動去除重復(fù)行的方法或指令。
例如,使用sort函數(shù)和uniq函數(shù)可以實現(xiàn)重復(fù)行去除的功能:
sort myfile.txt | uniq -u > cleanFile.txt
首先,sort函數(shù)會對文件myfile.txt中的每一行進行排序,然后uniq函數(shù)會輸出唯一值到新文件cleanFile.txt中。uniq具有兩種模式,默認模式(-d參數(shù))和允許重復(fù)行的模式(-c參數(shù)),這里我們使用的參數(shù)-u的意思是只輸出唯一值,不容許出現(xiàn)重復(fù)行。
通過上述方法,我們可以快速的把重復(fù)行去除。還可以使用窮舉法、字典或者其它數(shù)據(jù)結(jié)構(gòu)來解決復(fù)雜的行去重的問題,這種情況下涉及到程序開發(fā),如果文本文本規(guī)模較小,可以使用Python和相關(guān)的類庫來實現(xiàn)字符串去重,并且在最后寫入文件:
# Python3 program to remove duplicates
# from a given file.
# open a file in read mode
in_file = open("input.txt", "r")
# open a file in write mode
out_file = open("output.txt", "w")
# read all lines from the input file
lines = in_file.readlines()
# set to hold unique strings
unique_lines = set()
# traverse all the lines of input file
for line in lines:
# remove spaces and '\n'
line = line.strip("\n")
# if line is not present in the set
# add the line to the set
if line not in unique_lines:
out_file.write(line + "\n")
unique_lines.add(line)
# close the input and output file
in_file.close()
out_file.close()
由此可見,如何利用Linux的指令快速的解決文本文件中的重復(fù)行的問題,已經(jīng)提供了多種方法,用戶可以根據(jù)實際情況合理選擇最適合自身場景的方案,以便更好地完成任務(wù)。
成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價格厚道的香港/美國云服務(wù)器和獨立服務(wù)器。創(chuàng)新互聯(lián)——四川成都IDC機房服務(wù)器托管/機柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機房租用、服務(wù)器托管、機柜租賃、大帶寬租用,高電服務(wù)器托管,算力服務(wù)器租用,可選線路電信、移動、聯(lián)通機房等。
分享標題:復(fù)Linux去除重復(fù)行的方法(linux行去重)
新聞來源:http://m.fisionsoft.com.cn/article/djshijd.html


咨詢
建站咨詢
