Шаклҳо бояд ба таври ройгон тақсим карда шаванд
Маълумот дар файли матнии Linux бо фармони фармоишӣ то даме, ки ҳар як унсури якчанд роҳ муайян карда шавад. Бисёр вақт, вергулро ҳамчун ҷудокунандаи иттилооти ҷудогона истифода мебаранд.
Қоидаҳои асосии Sorting
Фармони фармоиш хатогиҳоеро дар файли матне тағйир медиҳад, ки онҳоро рақамӣ ва аломатҳо номбар кунанд. Қоидаҳои пешфарз барои фармони фармонҳо инҳоянд:
- Матнеро, ки бо рақам оғоз меёбад, пеш аз матн, ки бо мактуб оғоз меёбад; аввалин рақамҳои поёнтар.
- Матн, ки бо мактубе, ки дар алифбои пешина навишта мешавад, пеш аз он, ки номаи аввали матнҳои дигар матн пеш аз матн номбар карда шавад, ки бо мактубе, ки баъдтар дар алифбо пайдо мешавад.
- Дар куҷо матн бо мисолҳои калонтар ва хурдтарини ҳамон нома оғоз меёбад, мисоли поставкӣ якум аст.
Ҷудо кардани файли матн
Барои навиштани хатҳои файли Linux, шумо чунин фармонро ба монанди:
$ sort-k2 test.txtки аз рӯи ҳарфҳои сутуни дуюм (k2 ба сутуни дуюм ишора мекунад), файли "test.txt" -ро нависед. Ворид кардани мазмуни файли воридот:
1, Ҷейнин Тимберлейк, Title 545, Нарх 7,30 2, Taylor Swift, Title 723, Нарх $ 7.90 3, Mick Jagger, Title 610, Нарх $ 7.90 4, Ла Гала, Title 118, Нарх $ 7.30 5, Johnny Cash, Title 482, Нарх $ 6.50 6, Elvis Presley, Title 335, Price $ 7.30 7, Ҷон Леннон, Title 271, Нарх $ 7.90 8, Майкл Ҷексон, Title 373, Нарх 5,50Азбаски сутуни дуюм дар ин мисол номҳои якум ва охиринро номбар мекунад, ҳоли номуайян тавассути ҳар як номаи ҳар як шахс дар сутуни дуюм - Элвис, Ҷон, Ҷонни, Ҷин, Модар, Майкл, Мик ва Тейлор , дар зер нишон дода шудааст:
6, Elvis Presley, Title 335, Нарх $ 6.30 7, Ҷон Леннон, Title 271, Нарх $ 7.90 5, Johnny Cash, Title 482, Нарх $ 6.50 1, Ҷинин Тимберлейк, Title 545, Нарх 6.30 $ 4, Ла Гала, Title 118, Нарх $ 6.30 8, Майкл Ҷексон, Title 373, Price $ 5.50 3, Mick Jagger, Title 610, Нарх $ 7.90 2, Тейлор Спиф, Title 723, Нарх $ 7.90Агар шумо файлро бо -k3 нависед (бо истифодаи мундариҷаи сатр аз сутуни 3-сутуни рақами ном), маҳсулот:
4, Lady Gaga, Title 118, Price $ 6.30 7, John Lennon, Title 271, Нарх $ 7.90 6, Elvis Presley, Title 335, Нарх $ 6.30 8, Майкл Ҷексон, Title 373, Нарх 5.50 5, Ҷанни Cash, Title 482, Нарх $ 6.50 1, Justin Timberlake, Title 545, Нарх $ 6.30 3, Mick Jagger, Title 610, Нарх $ 7.90 2, Тейлор Swift, Title 723, Нарх $ 7.90ва
$ sort-k4 test.txtрӯйхате, ки бо нарх ҷудо карда мешавад:
8, Майкл Ҷексон, Title 373, Price $ 5.50 1, Ҷейнин Тимберлейк, Title 545, Нарх $ 6.30 4, Ла Гала, Title 118, Нархи $ 6.30 6, Elvis Presley, Title 335, Нарх $ 6.30 5, Johnny Cash, Title 482, Нарх $ 6.50 2, Taylor Swift, Title 723, Нарх $ 7.90 3, Mick Jagger, Title 610, Нарх $ 7.90 7, Ҷон Леннон, Title 271, Нарх $ 7.90Бозгаштан ба Sort
- -rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrllr Масалан, бо истифодаи натиҷаҳои боло:
$ sort-k4 -r test.txtНатиҷаҳо:
7, Ҷон Леннон, Title 271, Price $ 7.90 3, Mick Jagger, Title 610, Нархи $ 7.90 2, Taylor Swift, Title 723, Нарх $ 7.90 5, Johnny Cash, Title 482, Нарх $ 6.50 6, Elvis Presley, Title 335, Нарх $ 6.30 4, Lady Gaga, Title 118, Нарх 6.30 доллари ИМА, Ҷейнин Тимберлейк, Title 545, Нарх 6.30 $ 8, Майкл Ҷексон, Title 373, Нарх 5,55Нигоҳ доштани файли тақсимшуда
Феҳристи файл ба он нигоҳ намекунад. Барои захира кардани рӯйхати ҷудошуда дар як файл, шумо операторро тағирдиҳӣ истифода мебаред:
sort -k4 -r test.txt> test_new.txtки дар он "test_new.txt" парвандаи нав мебошад.
Интихоби Ҷараёни ҷараён
Шумо инчунин метавонед фармони фармоишро ба истеҳсоли ҷараён, ба монанди оператори қубурӣ истифода баред:
$ ls -al | sort-r -n -k5Ин паролро ба рӯйхати файлҳо, ки аз фармони ls фароҳам меоварад, аз рӯи файлҳои калонтар оғоз мекунад. Рақамҳои оператор -nn-ро аз ҷудосозии рақамӣ муайян мекунанд.