Linux ви предоставя няколко помощни програми, които можете да използвате за обработка на текстови файлове. Независимо дали искате да премахнете дублиращи се данни или да сортирате съдържанието във файл, инструментите на командния ред на Linux имат всичко необходимо.
Тази статия ще демонстрира командата за сортиране и как можете да я използвате, за да сортирате съдържанието в текстов файл и да го подредите съответно.
Какво представлява командата за сортиране?
Както бе споменато по -горе, командата за сортиране помага на потребителя да подреди съдържанието на текстов файл в определен ред. Предлагат се няколко опции, които ви позволяват да сортирате файла според вашето желание. Това е стандартна програма за Linux, която може да сортира текстов файл по азбучен ред, числено, по колона и други, в нормален или обратен ред.
Други функционалности на командата включват игнориране на символни случаи при сортиране, сортиране на файл по месец, игнориране на празните места във файл и произволно сортиране. Използвайки сортиране, можете също да проверите дали файлът вече е сортиран или не.
Как да използвате сортиране в Linux
Въпреки че сортирането съдържа няколко метода и флагове, които можете да използвате, все още е лесно да се научи.
Основен синтаксис
Основният синтаксис на използване на сортиране е:
sort filename
...където име на файл е абсолютният или относителният път на текстовия файл, който искате да сортирате.
По подразбиране сортирането ще подреди съдържанието според следните критерии:
- Редовете, започващи с цифрови знаци, имат най -висок приоритет.
- Командата ще сортира редовете по азбучен ред, след като сортира редовете, започващи с числа.
- Редовете, започващи с малки букви, предхождат редовете, започващи със същия знак с главни букви.
Помислете за текстов файл с име textfile.txt съдържаща следната информация:
За да сортирате файла по конфигурация по подразбиране:
sort textfile.txt
Изход:
Създайте нов изходен файл
Командата sort не променя съдържанието на файла. Той просто изпраща сортираното съдържание към стандартния изход. Това обаче не означава, че сортирането не може да създаде нов файл. Можете да използвате -или flag, за да посочите името на сортирания файл и сортирането автоматично ще създаде файла вместо вас и ще добави съдържанието.
защо услугите на google play са спрени
sort -o sortedfile filename
...където сортиран файл е името на изходния файл и име на файл е оригиналният файл, който се нуждае от сортиране.
Да сортирам textfile.txt и създайте нов изходен файл за съдържанието:
sort -o sorted.txt textfile.txt
Изход:
Сортирайте няколко файла
За да сортирате повече от един файл наведнъж, просто предайте имената на файловете, разделени с Космос характер.
sort textfile.txt textfile2.txt
Изход:
Обърнете внимание, че сортирането ще обедини изхода на файловете и ще ги покаже заедно в терминала.
Обратно сортиране на файл
Ако искате да обърнете подреждането на съдържанието, използвайте -r флаг с командата по подразбиране. The -r в следната команда означава Обратен .
sort -r textfile.txt
Изход:
Сортирайте файл числово
За да сортирате файл, съдържащ числови данни, използвайте -н флаг с командата. По подразбиране сортирането ще подреди данните във възходящ ред.
sort -n numbers.txt
Изход:
Ако искате да сортирате в низходящ ред, обърнете подреждането с помощта на -r опция заедно с -н флаг в командата.
sort -rn numbers.txt
Изход:
Игнорирайте регистъра на знаците по време на сортирането
По подразбиране сортирането взема предвид регистъра на знаците на съдържанието. Редовете, започващи с малки букви, предхождат редовете, започващи с версията с главни букви на същия знак. Например „той е момче“ ще предхожда „той е момче“.
Ако искате сортирането да игнорира регистъра на знаците, посочете -f или --ignore-case флаг, както следва:
sort -f textfile.txt
sort --ignore-case textfile.txt
Изход:
Сортирайте файл въз основа на месец
Използвайки -М флаг, можете да промените реда на съдържанието на файл въз основа на имената на месеците.
sort -M textfile2.txt
Изход:
Игнорирайте водещите празни места
Понякога файлът, който искате да сортирате, може да съдържа интервали или раздели. За да игнорирате такива празни знаци, използвайте -b флаг.
sort -b fileblanks.txt
Изход:
Сортирайте файл според колона
Ако имате текстов файл с данни, подредени в отделни колони, можете да сортирате файла според съдържанието на колона. Всичко, което трябва да направите, е да предадете номера на колоната заедно с -да се флаг.
Помислете за текстов файл, съдържащ информация за файла с различни колони. За да сортирате файл с име output.txt според осмата колона:
използване на лаптоп като монитор
sort -k8 -rn output.txt
Изход:
Сортиране на тръби с други команди
Можете дори да използвате сортиране с други команди на Linux, за да промените подреждането на изхода. Например, за да сортирате изхода на командата ls според размера на файловете:
ls -la | sort -k5 -rn
Изход:
Сортирайте файл на случаен принцип
Можете да използвате -R флаг, ако искате да рандомизирате реда на редовете в текстов файл. Помислете за файла textfile.txt :
sort -R textfile.txt
Изход:
Сортирайте номерата на версиите във файл
Ако имате текстов файл, съдържащ информация за версията, свързана с пакет, можете да сортирате съдържанието му с помощта на -V или --version-sort флаг.
yahoomail най -добрата уеб базирана електронна поща
sort -V version.txt
sort --version-sort version.txt
Изход:
Проверете дали файлът е сортиран
The -° С flag ще ви помогне при идентифицирането на файлове, които вече са сортирани според посочените опции. Ако съдържанието на файла е правилно сортирано, сортирането няма да покаже никакъв изход.
За да проверите дали файлът textfile.txt е сортирано:
sort -c textfile.txt
Сега нека да сортираме файла и да запишем неговия изход в нов файл с име sort.txt . При издаване на следната команда:
sort -c sorted.txt
Изход:
Можете също така да посочите различни флагове, за да проверите подреждането на файла според определени критерии. Например, за да проверите дали файлът numbers.txt е сортирано в низходящ ред:
sort -c -rn numbers.txt
Ще видите изход, който показва, че файлът не е сортиран правилно. Нека да сортираме файла и да проверим дали новият файл преминава теста.
sort -o sorted.txt -rn numbers.txt
sort -c -rn sorted.txt
Изход:
Сортирайте файла и премахнете дубликатите
Файлът, с който работите, може да съдържа дублирани данни. Въпреки че можете да използвате командата uniq за да премахнете такава информация от файла, sort може да изпълни тази задача вместо вас. The -u или --единствен по рода си знамето е това, от което се нуждаете.
Помислете за файл с име duplicate.txt :
За да сортирате файла и да премахнете повтарящите се данни:
sort -u duplicate.txt
Изход:
Можете да видите това, когато използвате -u флаг, сортиране показва само отделни редове и ги подрежда според посочените критерии.
Работа с текстови файлове в Linux
Въпреки че силата на текстовите редактори от командния ред е несравнима, все пак можете да изберете графичен редактор като gedit, за да променяте лесно съдържанието на текстов файл. Също така, това е по -добър избор за тези, които са нови за Linux и не могат да се справят с терминала.
Най -добрият начин да започнете с командния ред и Linux като цяло е като първо практикувате основни команди. След като обхване основните помощни програми, постепенното преминаване към по -сложни команди е може би най -добрият подход.
Дял Дял Туит електронна поща Справочен лист за команди на LinuxТози прост лист за мами ще ви помогне да се чувствате удобно с терминала на командния ред на Linux за нула време.
Прочетете Напред Свързани теми- Linux
- Управление на файлове
- Linux
- Команди на Linux
Deepesh е младши редактор за Linux в MUO. Той пише информационни ръководства за Linux, като има за цел да осигури блажено преживяване на всички новодошли. Не съм сигурен за филмите, но ако искате да говорите за технологии, той е вашият човек. В свободното си време можете да го намерите да чете книги, да слуша различни музикални жанрове или да свири на китара.
Още от Deepesh SharmaАбонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!
Щракнете тук, за да се абонирате