Ko nga mema e kohikohia ana me whakatau i etahi atu huarahi
Ko nga raraunga i roto i te kōnae kuputuhi Linux ka taea te taatai ki te whakahau ahua me te mea kei te honohia nga huanga katoa i etahi ara. Ko te nuinga o nga wa, ka whakamahia te peera hei kaiwehe mo nga korero kua whakawhitia.
Ture Taketake mo te Tohatoha
Ko te whakahau ahua e whakahou ana i nga raina i roto i te kōnae kuputuhi hei tohaina ia raupapa me te tohu. Ko nga ture taunoa mo te whakahau ahua ko:
- Ko nga kuputuhi e timata ana me te maha ka puta i mua i te tuhinga e timata ana me te reta; Kohia te iti o nga waahi.
- Kuputuhi e timata ana me te reta e puta mai ana i roto i te reta i mua ake ko te reta tuatahi o etahi atu tuhinga kuputuhi kua tohatohahia i mua i te tuhinga e timata ana me te reta e puta ake nei i roto i te reta.
- I te wahi ka timata te tuhinga ki te papa me te waahi iti o te reta kotahi, ka tohua te tauira iti iho i te tuatahi.
Te kōmaka i te Kōnae Kuputuhi
Hei waitohu i nga raina i roto i tetahi kōnae Linux, ka whakamahi koe i te whakahau ahua penei:
$ sort -k2 test.txte tohu ana i te kōnae "test.txt" kia rite ki nga tohu e timata ana i te tīwae tuarua (k2 e tohu ana ki te pou tuarua). Ko te whakaaro ko te ihirangi kōnae whakauru he:
1, Justin Timberlake, Taitara 545, Utu $ 7.30 2, Taylor Swift, Taitara 723, Utu $ 7.90 3, Mick Jagger, Taitara 610, Utu $ 7.90 4, Lady Gaga, Taitara 118, Tau $ 7.30 5, Johnny Cash, Taitara 482, Utu $ 6.50 6, Elvis Presley, Taitara 335, Utu $ 7.30 7, John Lennon, Taitara 271, Utu $ 7.90 8, Michael Jackson, Taitara 373, Utu $ 5.50Ko te huinga tuarua kei roto i tenei tauira ko nga ingoa tuatahi me nga whakamutunga, ka whakatauhia te putanga o te waahanga tuatahi ma te reta tuatahi o te ingoa tuatahi o ia takitahi i te papa tuarua-Elvis, John, Johnny, Justin, Lady, Michael, Mick, me Taylor , kia whakaaturia ki raro nei:
6, Elvis Presley, Taitara 335, Utu $ 6.30 7, John Lennon, Taitara 271, Utu $ 7.90 5, Johnny Cash, Taitara 482, Utu $ 6.50 1, Justin Timberlake, Taitara 545, Utu $ 6.30 4, Lady Gaga, Taitara 118, Tau $ 6.30 8, Michael Jackson, Taitara 373, Utu $ 5.50 3, Mick Jagger, Ingoa 610, Utu $ 7.90 2, Taylor Swift, Taitara 723, Utu $ 7.90Mena ka tohua e koe te kōnae ki te -k3 (ma te whakamahi i nga ihirangi aho e timata ana i te pou 3-te maha o te taitara Taitara), ko te putanga ko:
4, Lady Gaga, Taitara 118, Utu $ 6.30 7, John Lennon, Taitara 271, Utu $ 7.90 6, Elvis Presley, Taitara 335, Utu $ 6.30 8, Michael Jackson, Taitara 373, Utu $ 5.50 5, Johnny Cash, Taitara 482, Utu $ 6.50 1, Justin Timberlake, Taitara 545, Utu $ 6.30 3, Mick Jagger, Ingoa 610, Utu $ 7.90 2, Taylor Swift, Taitara 723, Utu $ 7.90a
$ sort -k4 test.txtKa whakaputahia he rārangi kua tohua e te utu:
8, Michael Jackson, Taitara 373, Utu $ 5.50 1, Justin Timberlake, Taitara 545, Utu $ 6.30 4, Lady Gaga, Taitara 118, Tau $ 6.30 6, Elvis Presley, Taitara 335, Utu $ 6.30 5, Johnny Cash, Taitara 482, Utu $ 6.50 2, Taylor Swift, Taitara 723, Utu $ 7.90 3, Mick Jagger, Taitara 610, Utu $ 7.90 7, John Lennon, Taitara 271, Utu $ 7.90Te huri i te Tohatoha
Ka huri te kōwhiringa -r te whakawhitinga. Hei tauira, te whakamahi i nga hua i runga:
$ sort -k4 -r test.txtka puta:
7, John Lennon, Taitara 271, Utu $ 7.90 3, Mick Jagger, Taitara 610, Utu $ 7.90 2, Taylor Swift, Taitara 723, Utu $ 7.90 5, Johnny Cash, Taitara 482, Utu $ 6.50 6, Elvis Presley, Taitara 335, Utu $ 6.30 4, Lady Gaga, Taitara 118, Utu $ 6.30 1, Justin Timberlake, Taitara 545, Utu $ 6.30 8, Michael Jackson, Taitara 373, Utu $ 5.50Te tiaki i tetahi Kōnae Whakarite
Kaore te kōnae i te whakaora. Hei tiaki i te raupapa whakariterite i roto i te kōnae, kei te whakamahi koe i te kaiwhakahaere whakatika:
momo -k4 -r test.txt> test_new.txtkei hea "test_new.txt" ko te kōnae hou.
Te tohatoha i te Whakaputanga Tohu
Ka taea hoki e koe te tono i te whakahau ahua ki te putanga o te awa, penei i te kaitautoko:
$ ls -a | tohua -r -n -k5Koinei nga putanga o te rarangi ingoa i hangaia e te ture a te rahi o te kōnae, me te timata i nga kōnae nui. Ko te kaiwhakahaere -n e tohu ana i te tohanga numera kaore i te tuhi.