مرتب سازی خطوط (Sort Lines (sort))
می خواهی فایل ها مرتب و منظم شوند؟ دستور «sort» خط ها را مرتب می کند. «کلید مرتب سازی (Sort Key)» همان ستونی است که بر اساسش ترتیب می دهیم.
آشنایی سریع با sort
با sort می توانی خطوط یک فایل متنی را مرتب کنی. این کار نظم می دهد و پیدا کردن داده را ساده تر می کند.
sort fruits.txt
apples,1
bananas,2
bananas,4
kiwis,3
kiwis,3
oranges,20
مرتب سازی معکوس با -r
اگر می خواهی از بزرگ به کوچک بچینی، از -r استفاده کن.
sort -r fruits.txt
oranges,20
kiwis,3
kiwis,3
bananas,4
bananas,2
apples,1
تعیین جداکننده با -t و ستون با -k
اگر ستون ها با کاما جدا شده اند، با -t جداکننده بده. سپس با -k بگو از کدام ستون مرتب کند.
sort -t "," -k2,2 fruits.txt
apples,1
bananas,2
oranges,20
kiwis,3
kiwis,3
bananas,4
مرتب سازی عددی با -n
مرتب سازی عادی، عدد را متن می بیند. با -n اعداد واقعی مرتب می شوند.
sort -t "," -n -k2,2 fruits.txt
apples,1
bananas,2
kiwis,3
kiwis,3
bananas,4
oranges,20
حذف تکراری ها با -u
اگر خط های تکراری داری، با -u فقط یکی می ماند.
sort -u fruits.txt
apples,1
bananas,2
bananas,4
kiwis,3
oranges,20
مرتب سازی ترکیبی
می توانی روی چند ستون مرتب کنی. اول ستون نام، بعد ستون عدد به صورت معکوس.
sort -t "," -k1,1 -k2,2r fruits.txt
apples,1
bananas,4
bananas,2
kiwis,3
kiwis,3
oranges,20
اشتباهات رایج و نکته ها
نکته: اگر خروجی عجیب بود، جداکننده را با -t درست بده. همچنین ستون درست را با -k انتخاب کن.
تمرین گام به گام
- یک فایل مثل
fruits.txtبساز. - فایل را ساده با
sortمرتب کن. - با
-t","و-k2,2بر اساس ستون عدد مرتب کن. - با
-nمرتب سازی عددی را فعال کن. - با
-uتکراری ها را حذف کن.
برای برش ستون قبل از مرتب سازی از cut کمک بگیر. همچنین grep برای فیلتر خط ها عالی است. راهنمای مرتب سازی خطوط را نشانک کن.
جمع بندی سریع
- sort خطوط را مرتب می کند.
- -r ترتیب را معکوس می کند.
- -t جداکننده ستون هاست.
- -k ستون مرتب سازی را تعیین می کند.
- -n اعداد را درست مرتب می کند.