Како пронаћи дупле податке у Линук текстуалној датотеци помоћу уник -а

Како пронаћи дупле податке у Линук текстуалној датотеци помоћу уник -а

Да ли сте икада наишли на текстуалне датотеке са поновљеним редовима и дупликатом речи? Можда редовно радите са излазом наредби и желите да их филтрирате за различите низове. Што се тиче текстуалних датотека и уклањања сувишних података у Линук -у, команда уник је ваш најбољи избор.





У овом чланку ћемо детаљно расправљати о уник команди, заједно са детаљним водичем о томе како да употребите команду за уклањање дуплираних редова из текстуалне датотеке.





Шта је уник команда?

Наредба уник у Линук -у се користи за приказ идентичних редова у текстуалној датотеци. Ова команда може бити корисна ако желите да уклоните дупле речи или низове из текстуалне датотеке. Пошто се команда уник подудара са суседним линијама за проналажење сувишних копија, ради само са сортираним текстуалним датотекама.



Срећом, можете да пренесете врста команда са уник -ом за организовање текстуалне датотеке на начин који је компатибилан са командом. Осим приказивања понављајућих редова, команда уник може да рачуна и појаву дуплираних редова у текстуалној датотеци.

Како се користи команда уник

Постоје различите опције и заставице које можете користити са уник -ом. Неки од њих су основни и изводе једноставне операције, попут штампања поновљених редова, док су други за напредне кориснике који често раде са текстуалним датотекама на Линуку.



Основна синтакса

Основна синтакса команде уник је:

uniq option input output

...где опција је заставица која се користи за позивање посебних метода команде, улазни је текстуална датотека за обраду и излаз је путања датотеке која ће сачувати излаз.





Тхе излаз аргумент није обавезан и може се прескочити. Ако корисник не наведе улазну датотеку, уник узима податке са стандардног излаза као улаз. Ово омогућава кориснику да проследи уник са друге команде Линука .

Пример текстуалне датотеке

Користићемо текстуалну датотеку дуплицате.ткт као улаз за команду.





127.0.0.1 TCP
127.0.0.1 UDP
Do catch this
DO CATCH THIS
Don't match this
Don't catch this
This is a text file.
This is a text file.
THIS IS A TEXT FILE.
Unique lines are really rare.

Имајте на уму да смо већ сортирали ову текстуалну датотеку користећи врста команда. Ако радите са неком другом текстуалном датотеком, можете је сортирати помоћу следеће команде:

sort filename.txt > sorted.txt

Уклоните дупле линије

Најосновнија употреба уник -а је уклањање понављајућих низова са улаза и штампање јединственог излаза.

uniq duplicate.txt

Излаз:

Уочите да систем не приказује другу појаву линије Ово је текстуална датотека . Такође, поменута команда штампа само јединствене редове у датотеци и не утиче на садржај оригиналне текстуалне датотеке.

Броји поновљене редове

Да бисте приказали број поновљених редова у текстуалној датотеци, користите заставица са подразумеваном командом.

uniq -c duplicate.txt

Излаз:

Систем приказује број сваког реда који постоји у текстуалној датотеци. Видите ту линију Ово је текстуална датотека се појављује два пута у датотеци. Подразумевано, команда уник разликује велика и мала слова.

Да бисте одштампали само дупле редове из текстуалне датотеке, користите застава. Тхе означава Дупликат .

uniq -D duplicate.txt

Систем ће приказати излаз на следећи начин.

This is a text file.
This is a text file.

Прескочите поља док проверавате да ли постоје дупликати

Ако желите да прескочите одређени број поља док се подударају низови, можете користити застава са командом. Тхе означава Поље .

Размотрите следећу текстуалну датотеку фиелдс.ткт .

192.168.0.1 TCP
127.0.0.1 TCP
354.231.1.1 TCP
Linux FS
Windows FS
macOS FS

Да бисте прескочили прво поље:

uniq -f 1 fields.txt

Излаз:

192.168.0.1 TCP
Linux FS

Поменута команда је прескочила прво поље (ИП адресе и називи ОС -а) и упарила другу реч (ТЦП и ФС). Затим је приказао прву појаву сваког подударања као излаз.

Занемари знакове при поређењу

Као и прескакање поља, можете прескочити и ликове. Тхе флаг вам омогућава да наведете број знакова које треба прескочити док се подударају дуплирани редови. Ова функција помаже када су подаци са којима радите у облику листе на следећи начин:

како направити диск за опоравак за Виндовс 8.1
1. First
2. Second
3. Second
4. Second
5. Third
6. Third
7. Fourth
8. Fifth

Занемаривање прва два знака (нумерације списка) у датотеци лист.ткт :

uniq -s 2 list.txt

Излаз:

У горњем излазу прва два знака су занемарена, а остатак је упарен ради јединствених линија.

Проверите да ли први Н број знакова има дупликате

Тхе -ин флаг вам омогућава да проверите само одређени број знакова ради дупликата. На пример:

uniq -w 2 duplicate.txt

Горе поменута команда ће се подударати само са прва два знака и штампаће јединствене редове ако их има.

Излаз:

Уклоните осетљивост великих и малих слова

Као што је горе поменуто, уник разликује велика и мала слова док подудара линије у датотеци. Да бисте занемарили велика и мала слова, користите опцију са командом.

uniq -i duplicate.txt

Видећете следећи излаз.

Приметите у горњем испису, уник није приказао линије УЧИНИТЕ ОВО и Ово је текстуална датотека .

Пошаљите излаз у датотеку

Да бисте послали излаз команде уник у датотеку, можете користити Преусмеравање излаза ( > ) карактера на следећи начин:

uniq -i duplicate.txt > otherfile.txt

Док шаље излаз у текстуалну датотеку, систем не приказује излаз наредбе. Садржај нове датотеке можете проверити помоћу мачка команда.

cat otherfile.txt

Такође можете користити и друге начине послати излаз командне линије у датотеку у Линуку .

Анализа дуплираних података помоћу уник

Већину времена док управљате Линук серверима радит ћете на терминалу или уређивати текстуалне датотеке. Стога, знање како уклонити сувишне копије редова у текстуалној датотеци може бити велика предност за ваш скуп вештина Линука.

Рад са текстуалним датотекама може бити фрустрирајући ако не знате како филтрирати и сортирати текст у датотеци. Да би вам олакшао рад, Линук има неколико команди за уређивање текста, нпр сед и авк који вам омогућавају ефикасан рад са текстуалним датотекама и излазима из командне линије.

Објави Објави Твеет Емаил Ових 10 примера Сед учиниће вас моћним корисником Линука

Желите да постанете снажан корисник Линука? Ухватити се у коштац са седом ће вам помоћи. Учите из ових 10 примера сед.

Прочитајте следеће
Повезане теме
  • Линук
  • Линук
О аутору Деепесх Схарма(Објављено 79 чланака)

Деепесх је млађи уредник за Линук у МУО. Он пише информативне водиче за Линук, са циљем да пружи блажено искуство свим придошлицама. Нисам сигуран у филмове, али ако желите да разговарате о технологији, он је ваш момак. У слободно време можете га пронаћи како чита књиге, слуша различите музичке жанрове или свира гитару.

Више од Деепесх Схарма

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, критике, бесплатне е -књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили