„Linux“ komandos

„Bash“ rūšiavimo komanda

„Bash“ rūšiavimo komanda
Sėkmės bandant įdiegti rūšiavimo algoritmą „bash“, nei baigiama iki rytojaus. Nesijaudinkite, jums to nereikia, nes turite rūšiavimo komandą.

Naudodami rūšiavimą, galite užsisakyti failus pagal žodyno tvarką arba pagal skaitinę vertę, atsitiktinai parinkdami failų eilutes, pašalindami pasikartojančias eilutes ir patikrindami, ar failas yra rūšiuojamas.

Gali būti, kad galėsite atlikti kitus dalykus, bet pirmiausia susirūpinkime, ar apvyniosime galvą, kaip naudoti rūšiavimą „bash“ scenarijuose.

Kas yra rūšis?

Rūšiuoti yra išorinė komanda, kuri sujungia failus, rūšiuodama jų turinį pagal rūšiavimo tipą, o rūšiavimo rezultatus rašo į standartinę išvestį.

Rūšiuoti komandos parinktis bash

Rūšiavimo komandoje yra 31 parinktis (13 pagrindinės ir 18 kategorijos kaip kitos). Labiausiai patyręs „bash“ programavimas (net ekspertai) žino tik keletą pagrindinių rūšiavimo variantų, reikalingų norint išsiversti. Kitus retai paliečia. Jums pasisekė, mes turime laiko juos visus paliesti.

Pagrindinės rūšiavimo parinktys

Tai yra parinktys, kurios padeda atlikti darbus ir rūšiuoti (rūšiavimas), be to, kad prieš rūšiuojant būtų galima tvarkyti rūšiuojamus rezultatus (po apdorojimo) ir taikyti filtrus (filtrus).

Rūšiavimas

Rūšiuoti galima su 5 skirtingais rūšiavimo būdais. Čia yra lentelė, rodanti kiekvieną rūšiavimo tipą ir susijusias parinktis.

Rūšiuoti Trumpas variantas / ilgas pasirinkimas / kt
žodis
Skaitmeninis rūšiavimas (bendras) -g / -bendrasis-skaitmeninis-rūšiuoti
bendrasis-skaitinis
parama moksliniam užrašymui
0.1234e4 = 1234
Skaitmeninis rūšiavimas (žmogus) -h / -žmogaus-skaitinio-rūšiavimo
žmogiškas-skaitinis
1.234K = 1234
Skaitmeninis -n / -skaitinis-rūšiuoti
skaitinis
… < -1 < 0 < 1 <…
Mėnuo -M / mėn. Rūšiuoti
mėnesį
Nežinoma < Jan < Feb <… < Nov < Dec
Atsitiktinis -r / atsitiktinis rūšiavimas
atsitiktinis
Versija -V / -versija-rūšiuoti
versija

Atminkite, kad kiekvieno rūšiavimo rūšis turi ilgą parinktį, besibaigiantį rūšiuoti. Be tam tikrų rūšiavimo parinkčių, rūšiavimui pagal žodį gali būti naudojama parinktis -sort = WORD. Pavyzdžiui, -sort = random gali būti naudojamas vietoje -random-sort arba -r.

Pavyzdžiai

Čia yra keletas rūšiavimo komandų pavyzdžių kiekvienam rūšiavimo metodui.

Pavyzdys) Vardų rūšiavimas

Rūšiuoti nėra problemų rūšiuojant eilutes abėcėlės tvarka. Apsvarstykite nerūšiuotų žinomų žmonių sąrašą.

Funkcija

Įžymūs žmonės()

garbanos - tylus https: // www.biografija internete.netas / zmones / garsus-100.HTML
| grep post-content | sed -e's /<[^>] *.// g '-e' s / II pasaulinis pasaulis // g '-e' s / \ (Wilbur \)
/ \ 1 Wright / '| grep -o -e '\ (\ ([A-Z] \ + [.] \?\) \ + [a-z] * \ s \) \ + ([0-9] \ + \ s [^)] \+."

Komandinė eilutė

garsūs žmonės | rūšiuoti

Rezultatas

Stephenas Kingas (1947 -)
Steve'as Jobsas (1955 - 2012)
Stingas (1951 -)
Tigras Woodsas (1975 -)
Tomas Cruise'as (1962 -)
Usainas Boltas (1986 m.)
Vinci (1452 - 1519)
Waltas Disney'as (1901 - 1966)
Wilburas Wrightas (1867 - 1912)
Woodrow Wilson (1856 - 1924)

Pavyzdys) Bendroji skaitmeninė rūšiavimas

Jei turime rūšiuoti skaitines vertes, atsižvelgdami į mokslinę notaciją, pavyzdžiui, 99e2, galime naudoti bendrą skaitinę rūšiavimą.

Funkcija

nerūšiuotos skaitinės vertės ()

100 sek rūšiuoti - atsitiktinai rūšiuoti | sed '3i 9e2' | sed „3i 99K“

Apsvarstykite surūšiuotą išvestį naudodami kiekvieną metodą. Atkreipkite dėmesį, kad sąraše yra ne tik vertės nuo 1 iki 100, bet ir „9e12“ (900) ir „99K“ (99000).

Komandinė eilutė

nerūšiuotos skaitinės vertės | rūšiuoti -n

Rezultatas

96
97
98
99
99 tūkst
100

Ką apie 900 ir 99000. Teisingai, tai tik skaitinis rūšiavimas. Kitas.

Komandinė eilutė

nerūšiuotos skaitinės vertės | rūšiuoti -h

Rezultatas

96
97
98
99
100
99 tūkst

Ką apie 900. Teisingai, tai tik žmogiškas skaitinis rūšiavimas. Kitas.

Komandinė eilutė

nerūšiuotos skaitinės vertės | rūšiuoti -g

Rezultatas

96
97
98
99
99 tūkst
100
9e2

Kas bus su 99000. Teisingai, tai tik bendras skaitinis rūšiavimas. Kaip matote, šiuo atveju rūšiavimo metodas nėra suderinamas; tačiau tai nereiškia, kad negalite sugalvoti.

Komandinė eilutė

nerūšiuotos skaitinės vertės | sed 's / [kK] / e3 /' | rūšiuoti -g

Rezultatas

96
97
98
99
100
9e2
99e3

Dabar tai panašiau.

Pavyzdys) Žmogaus skaitinė rūšis

Jei turime rūšiuoti skaitines vertes, atsižvelgdami į tokių žymėjimų kaip K, G, M ir E reikšmę, galime naudoti žmogaus skaitmeninį rūšiavimą.

Komandinė eilutė

100 sek rūšiuoti - atsitiktinai rūšiuoti | sed '3i 3k' | rūšiuoti -h

Rezultatas

96
97
98
99
100
3k

Pavyzdys) Skaitmeninis rūšiavimas

Jei viskas, ko mums reikia, yra rūšiuoti sveikus skaičius, skaitmeninis rūšiavimas daro apgaulę.

Komandinė eilutė

100 sek rūšiuoti - atsitiktinai rūšiuoti | rūšiuoti - skaitmenys - rūšiuoti

Rezultatas

95
96
97
98
99
100

Pavyzdys) Mėnesio rūšiavimas

Mėnesio rūšiavimas leidžia užsisakyti eiles pagal mėnesį. Tai gali pasirodyti naudinga grupuojant eiles pagal mėnesį, ypač jei nėra galimybės rūšiuoti pagal laiką.

Funkcija

mėnesių ()

katė  <Jan
Vasario mėn
Kovo mėn
Balandžio mėn
Gegužė
Birželio mėn
Liepos mėn
Rugpjūčio mėn
Rugsėjo mėn
Spalio mėn
Lapkritis
Gruodžio mėn
EOF

Tarkime, kad mėnesiai nėra rūšiuojami.

Komandinė eilutė

mėnesiai | rūšiuoti - atsitiktinai rūšiuoti

Rezultatas

Kovo mėn
Spalio mėn
Gruodžio mėn
Balandžio mėn
Gegužė
Rugsėjo mėn
Rugpjūčio mėn
Lapkritis
Liepos mėn
Jan
Vasario mėn
Birželio mėn

Mes visada galime rūšiuoti pagal mėnesį.

Komandinė eilutė

mėnesiai | rūšiuoti - atsitiktinai rūšiuoti | rūšiuoti - mėnesį rūšiuoti

Rezultatas

Jan
Vasario mėn
Kovo mėn
Balandžio mėn
Gegužė
Birželio mėn
Liepos mėn
Rugpjūčio mėn
Rugsėjo mėn
Spalio mėn
Lapkritis
Gruodžio mėn

Atkreipkite dėmesį, kad jei lapkričio mėnesį pakeisime „Dec“ į bet kurią eilutę, sakykime „Novem“, jis bus surūšiuotame išvestyje po.

Pavyzdys) Atsitiktinis rūšiavimas - užmuškite kieno nors kito terminalą

Kaip ir reikėjo tikėtis, atsitiktinis rūšiavimas veikia priešingai nei rūšiavimas, sumaišomos eilutės.

Tarkime, kad švietimo tikslais mes norime nužudyti kitą vartotoją. Turėtume įsitikinti, kad tai nėra mūsų pty, ir atsitiktinai parinkti sąrašus, kad jie būtų gražesni ir kad galėtume pasakyti, kad ptys buvo pasirinkti atsitiktinai.

Komandos

žinutė-pty ()


vietinis pty;
pty = "$ 1"
;
echo -n "Jūs einate žemyn"> / dev / $ pty;
i i 5 4 3 2 1;
padaryti
miegoti 1;
aidas -n "$ i"> / dev / $ pty;
padaryta;
aidas „Iki!"> / dev / $ pty;
miegoti 1


ps | grep pty | grep -v -e $ (mypty) | rūšiuoti - atsitiktinai rūšiuoti | galva -1> stdin;

žinutė-pty $ (pty < stdin );
nužudyti $ (pid < stdin )


Išvestis kažkieno terminale
Jūs nusileisite per 5 4 3 2 1 Iki pasimatymo!]
(išėjimas)

Pavyzdys) Versijų rūšiavimas - rūšiavimas ips

Kaip žinote, šaltinio failai gali būti versijami naudojant tokias eilutes kaip 1.0. Be to, versijos gali būti gilesnės su versijų numeriais, pvz., 1.0.0 tokių, kurie matomi populiariose semantinių versijų schemose.

Versijų rūšiavimas leidžia rūšiuoti versijų numerius. Puiku! Kas dabar? Išbandykime.

Šiame pavyzdyje paruošiau „bash“ scenarijų, kad generuočiau atsitiktinius ips, kad mums nereikėtų ten eiti. Tai repo. Čia galite greitai pradėti tuos, kurie neturi atpirkimo.

Komandos

gito klonas https: // github.com / temptemp3 / linuxhint.com.git
pseudonimas random-ips = 'test -f "linuxhint.com / generuoti-atsitiktinius-ips.sh "; bash $ _ '

Dabar, kai būsite pasirengę, pradėkime.

Komandinė eilutė

atsitiktiniai IP 200 | tee ips

Rezultatas

199.174.177.98
180.33.247.107
87.130.125.109
76.86.8.20
162.41.183.150
226.58.10.196
83.121.11.145
80.199.197.19
44.214.89.52
185.174.143.111

Gerai, tai veikia. Dabar pažiūrėkime, kas atsitiks, kai bandysime surūšiuoti ips.

Komandinė eilutė

rūšiuoti ips

Rezultatas

76.88.194.157
8.96.11.181
82.169.213.206
84.218.132.51
84.3.101.97
87.137.131.40
87.59.32.91
89.149.111.242
97.121.162.244
98.145.130.186

Iš pirmo žvilgsnio atrodo, kad jis veikia, bet tokios linijos kaip 8.96.11.181 turėtų pasirodyti kitur.

Komandos


už o in d h n V g M
padaryti
rūšiuoti ips - $ o> ips $ o ,,
padaryta

aidas visokių vienodų skaitinių rūšiuoti
diff ips n, d 1> / dev / null || aido žodyno tvarka != skaitinis rūšiavimas
diff ips n, h 1> / dev / null || echo žmogaus skaitmeninė rūšis != skaitinis rūšiavimas
diff ips n, g 1> / dev / null || echo bendroji skaitinė rūšis != skaitinis rūšiavimas
diff ips n, v 1> / dev / null ||
aido versija rūšiuoti != skaitinis rūšiavimas
show_n_v_ips_diff = "true"


testas ! "$ show_n_v_ips_diff" || diff ips n, v

Rezultatas

visų rūšių vienodi skaitiniai rūšiuoti
žodyno tvarka != skaitinis rūšiavimas
versijos rūšiavimas != skaitinis rūšiavimas
13,14d12
< 44.221.43.20
< 44.27.108.172
15a14,15
> 44.27.108.172
> 44.221.43.20
27d26
< 84.218.132.51
29c28
< 87.137.131.40

Kaip matote versijų rūšiavimas, galite rūšiuoti versijų numerius, kai kiti rūšiavimo metodai nepavyksta.

Pavyzdys) Versijų rūšiavimas - failų vardų rūšiavimas su versijų numeriais

Remdamiesi paskutiniu pavyzdžiu, naudokime versijų rūšiavimą šiek tiek arčiau jo paskirties. Kaip žinote, versijų numeriai dažniausiai rodomi failų pavadinimuose. Žr. Išsamią informaciją apie versijų rūšiavimą.

Pirmiausia transformuokime ips į kitą projekto šaltinio failą.

Komandos

alfa ()
alfa = "abcdefghijklmnopqrstuvwxyz";
echo -n $ alpha: $ ((RANDOM% 26)): 1

beta ()
alfa = "ab";
echo -n $ alpha: $ ((RANDOM% 2)): 1


katė ips | skaitant -r eilutė; padaryti
echo $ (alfa) -v $ line $ (testas $ ((RANDOM% 5)) -eq 0 || beta).degutas.gz;
padaryta | tee gurkšniai

Rezultatas

x-v56.16.109.54.degutas.gz
k-v117.38.14.165a.degutas.gz
d-v87.59.32.91a.degutas.gz
h-v115.215.64.100.degutas.gz
s-v72.174.246.218b.degutas.gz
h-v163.93.19.173.degutas.gz
u-v184.225.11.92b.degutas.gz
y-v205.53.5.211a.degutas.gz
t-v175.196.164.17b.degutas.gz
e-v167.42.221.178b.degutas.gz
c-v126.54.190.189b.degutas.gz
b-v169.180.221.131a.degutas.gz
y-v210.125.170.231a.degutas.gz
x-v71.56.120.9b.degutas.gz

Pratimas

Leiskite aukščiau nurodytoms komandoms veikti greičiau naudojant „xargs“

Žr. Pavyzdį, kaip naudoti komandą xargs bash scenarijuose.

Šį kartą net nesivarginsime naudodami kitus rūšiavimo metodus.

Komandinė eilutė

rūšiuoti -V gurkšnius

Rezultatas

d-v127.100.108.192.degutas.gz
e-v62.140.229.42a.degutas.gz
e-v149.77.211.215a.degutas.gz
e-v167.42.221.178b.degutas.gz
e-v194.189.236.29a.degutas.gz
e-v198.145.199.84b.degutas.gz
e-v240.1.147.196b.degutas.gz
f-v50.100.142.42b.degutas.gz
f-v117.58.230.116.degutas.gz
f-v139.17.210.68b.degutas.gz
f-v153.18.145.133b.degutas.gz
g-v201.153.203.60b.degutas.gz
g-v213.58.67.108.degutas.gz
h-v5.206.37.224.degutas.gz

Dabar matote, kad versijų rūšiavimas gali būti naudingas rūšiuojant failų pavadinimus su versijų numeriais.

Iš anksto rūšiuoti

Rūšiuoti turi keturias pagrindines parinktis, turinčias įtakos faktiniam rūšiavimui, būtent: -ignore-pirmaujanti-tuščia, -ignore-case, -ignore-non-printing ir -dictionary-order, kurios gali sutapti, bet gali ir nesutapti. Stebėkite kiekvienos parinkties pavyzdį.

Rūšiuoti ignoruojant pirmaujančias tuščias vietas

Rūšiuoti leidžia ignoruoti įvesties ruošinius kaip pasirinktį. Rūšiuotoje išvestyje išsaugomi pagrindiniai ruošiniai.

Variantas

--ignoruoti ruošinius

Naudojimas

rūšiuoti - pirmaujantieji-ruošiniai

Komandos

garsūs žmonės> fp
katė >> fp << EOF
Marilyn Monroe (1926 - 1962)
Abraomas Linkolnas (1809 - 1865)
EOF
katės fp | rūšiuoti | tac

Rezultatas

Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)
Marilyn Monroe (1926 - 1962)
Abraomas Linkolnas (1809 - 1865)

Atkreipkite dėmesį, kad eilučių, pridėtų prie fp, priekiniai tarpai pirmiausia rodomi rūšiavimo išvestyje.

Norėdami tai išspręsti, turime nepaisyti pagrindinių ruošinių taip.

Komandos

garsūs žmonės> fp
katė >> fp << EOF
Marilyn Monroe (1926 - 1962)
Abraomas Linkolnas (1809 - 1865)
EOF
katės fp | rūšiuoti - pradinukai-pirmaujantys ruošiniai - atnešėjai-vedantys-ruošiniai | tac

Rezultatas

Marilyn Monroe (1926 - 1962)
Marilyn Monroe (1926 - 1962)
Marija Antuanetė (1755 - 1793)

Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)
Abraomas Linkolnas (1809 - 1865)

Alternatyvos

katės fp | sed 's / ^ \ s * //' | rūšiuoti | tac

Atkreipkite dėmesį, kad alternatyva neišsaugo pagrindinių ruošinių rūšiuojant išvestį.

Rūšiuoti neatsižvelgiant į atvejį

Rūšiuoti leidžia įvesties didžiųjų raidžių nepaisyti. Byla saugoma išrūšiuotoje išvestyje.

Variantas

--ignore-case

Naudojimas

rūšiuoti --ignore-case

Komandos

garsūs žmonės> fp
katė >> fp << EOF
Abraomas Linkolnas (1809 - 1865)
ABraham Lincoln (1809 - 1865)
EOF
katės fp | rūšiuoti | tac

Rezultatas

Amelija Earhart (1897 - 1937)
Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)
ABraham Lincoln (1809 - 1865)

Atkreipkite dėmesį, kad eilučių, pridėtų prie fp, priekiniai tarpai pirmiausia rodomi rūšiavimo išvestyje.

Norėdami tai išspręsti, turime ignoruoti pagrindinius ruošinius taip.

Komandos

garsūs žmonės> fp
katė >> fp << EOF
Abraomas Linkolnas (1809 - 1865)
ABraham Lincoln (1809 - 1865)
EOF
katės fp | rūšiuoti --ignore-case | tac

Rezultatas

Amelija Earhart (1897 - 1937)
Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)
Abraomas Linkolnas (1809 - 1865)
ABraham Lincoln (1809 - 1865)

Alternatyvos

katės fp | skaitant -r eilutė; do echo $ line ,,; padaryta | rūšiuoti | tac

Atminkite, kad alternatyva neišsaugo didžiųjų ir mažųjų raidžių rūšiuojant išvestį.

Rūšiuoti ignoruojant spausdinimą

Rūšiuoti leidžia ignoruoti įvesties nespausdinimą kaip parinktį. Nespausdinimas išsaugomas išrūšiuotoje išvestyje.

Variantas

--ignoruoti-nespausdinti

Naudojimas

rūšiuoti --ignore-nonprinting

Komandos

garsūs žmonės> fp
aidas -e "\ x90Abe" >> fp
katės fp | rūšiuoti | tac

Rezultatas

Audrey Hepburn (1929 - 1993)
Angelina Jolie (1975 m.)
Amelija Earhart (1897 - 1937)
Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)

Panašu, kad mums trūksta „Abe“ veiksmo nespausdinant simbolių rūšiavimo įvestyje.

Norėdami tai išspręsti, turime ignoruoti nespausdinamus simbolius.

Komandos

garsūs žmonės> fp
aidas -e "\ x90Abe" >> fp
katės fp | rūšiuoti --ignore-nonprinting | tac
[/ cc \
Rezultatas
[cc lang = "bash"]
Amelija Earhart (1897 - 1937)
Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)
Abe

Rūšiuoti žodyno tvarką

Rūšiuoti leidžia ignoruoti visus įvestis, išskyrus tarpus ir raidinius ir skaitmeninius simbolius. Įvestis išsaugoma išrūšiuotoje išvestyje.

garsūs žmonės> fp
aidas -e "\ x90Abe" >> fp
katės fp | rūšiuoti --d | tac

Pašto rūšiavimas

Rūšiuoti turi vieną pagrindinę parinktį, kuri nedaro įtakos rūšiavimui, būtent - reversas. Tačiau tai daro įtaką išvestims, leidžianti perjungti tvarką tarp didėjančios ir mažėjančios. Toliau pateikiamas pavyzdys.

Rūšiuoti atvirkštinę išvestį

Rūšiuoti leidžia išvestį rodyti atvirkštine tvarka kaip parinktį.

Variantas

--atvirkščiai

Naudojimas

rūšiuoti - reversas

Komandinė eilutė

garsūs žmonės | rūšiuoti - reversas

Rezultatas

Angelina Jolie (1975 m.)
Amelija Earhart (1897 - 1937)
Alfredas Hitchcockas (1899 - 1980)
Albertas Einšteinas (1879 - 1955)
Alas Goras (1948 -)
Abraomas Linkolnas (1809 - 1865)

Alternatyvos

rūšiuoti | tac

Kitos rūšiavimo parinktys

Yra dar 22 rūšiavimo variantai. Toliau pateikiami pavyzdžiai.

Rūšiuoti patikrą

Rūšiuoti turi parinktį, leidžiančią patikrinti, ar įvestis rūšiuojama. Jis grįžta po pirmo nerūšiuotos eilutės egzemplioriaus. Būtina, kad įvestis turi būti rūšiuojama, bet greičiausiai jau yra tvarkinga, tinka naudoti rūšiavimo patikrą.

Variantas

--patikrinti

Naudojimas

rūšiuoti - patikrinti

Komandinė eilutė

10 sek rūšiuoti - atsitiktinai rūšiuoti | rūšiuoti - patikrinti

Rezultatas

rūšiuoti: -: 3: sutrikimas: 10

Komandinė eilutė

10 sek rūšiuoti - atsitiktinai rūšiuoti | rūšiuoti | rūšiuoti - patikrinti

Rezultatas

(tuščias)

Rūšiuoti išvestį

Rūšiuoti turi parinktį, leidžiančią nurodyti failą, į kurį norite rašyti, o ne naudoti standartinę išvestį ar peradresavimą. Jo naudojimas gali pagerinti suderinamumą tarp scenarijų aplinkų.

Variantas

--išvestis = FILE

Naudojimas

rūšiuoti - išvestis = FILE

Komandinė eilutė

10 sek rūšiuoti - atsitiktinai rūšiuoti - išvestis = atsitiktinis-10

Rezultatas

(tuščias)

Rūšiavimas nutrauktas

Rūšiuoti turi parinktį, leidžiančią nustatyti eilučių ribotuvą kaip nulį, o ne naują eilutę.

Variantas

--nulinio nutraukimo

Naudojimas

rūšiuoti - nulinis

Komandinė eilutė

10 sek tr '\ 012' '\ 000' | rūšiuoti - nulio nutrauktas - atsitiktinis rūšiavimas

Rezultatas

25346178910

Rūšiuoti stabiliai

Rūšiuoti turi parinktį, leidžiančią išjungti paskutinės priemonės palyginimą. Dėl to gali būti pasiektas stabilesnis vykdymo laikas, kai pakankamai dideli įėjimai gali sukelti nestabilų rūšiavimą.

Variantas

--stabilus

Naudojimas

rūšiuoti - stabilus

Komandinė eilutė

laiko seka 1000000 | rūšiuoti - atsitiktinai rūšiuoti | rūšiuoti - stabilus> / dev / null

Rezultatas

tikras 0m9.138-ieji
vartotojas 0m9.201-ieji
sys 0m0.107-ieji

Rūšiuoti buferio dydį

Rūšiuoti turi parinktį, leidžiančią nustatyti rūšiuojamos atminties kiekį kaip buferį. Jis gali būti naudojamas norint apriboti atminties vartojimą rūšiuojant didesnes įvestis. Tai gali turėti įtakos našumui.

Variantas

--buferio dydis = SIZE

Naudojimas

rūšiuoti - buferio dydis = 64

Komandinė eilutė

laiko seka 1000000 | rūšiuoti -random-rūšiuoti | rūšiuoti -stabilus -buferio dydis = 64> / dev / null

Rezultatas

tikras 0m21.685 metai
vartotojas 0m9.858-ieji
sys 0m2.092s

Rūšiuoti unikaliai

Rūšiuoti turi parinktį, leidžiančią pašalinti pasikartojančias eilutes rūšiavimo išvestyje

Variantas

--Unikalus

Naudojimas

rūšiuoti - unikalus

Komandinė eilutė

aidas 1 2 2 4 5 | tr '\ 040' \ 000 '| rūšiuoti - nulio pabaiga - unikalumas

Rezultatas

1245 m

Alternatyvos

rūšiuoti | unikalus

Išvada

Rūšiuoti yra išorinė komanda, naudinga ne tik tada, kai naudojama kartu su kitomis išorinėmis komandomis, bet ir naudinga, kai naudojama su komandomis be integruoto užsakymo metodo, pavyzdžiui, vartotojo apibrėžta funkcija ar apskritai „bash“ scenarijai.

Naudingi įrankiai „Linux“ žaidėjams
Jei jums patinka žaisti žaidimus „Linux“ sistemoje, yra tikimybė, kad galbūt naudojote tokias programas ir įrankius kaip „Wine“, „Lutris“ ir „OBS Stud...
„HD Remastered“ žaidimai, skirti „Linux“, kurie niekada anksčiau nebuvo išleisti „Linux“
Daugelis žaidimų kūrėjų ir leidėjų siūlo senų žaidimų HD remasterį, kad prailgintų franšizės laiką. Prašome gerbėjų, prašančių suderinamumo su šiuolai...
Kaip naudoti „AutoKey“, norint automatizuoti „Linux“ žaidimus
„AutoKey“ yra darbalaukio automatizavimo įrankis, skirtas „Linux“ ir „X11“, užprogramuotas „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijų ir „MACRO“ f...