Ngokusebenzisa ezinye izindlela zesimanjemanje eduze kwamathuluzi amadala womugqa womyalo, ungajabula kakhulu futhi uthuthukise ukukhiqiza kwakho.

Emsebenzini wansuku zonke e Linux Ku-Unix, sisebenzisa amathuluzi amaningi omugqa wemiyaloβisibonelo, i-du yokuqapha ukusetshenziswa kwediski kanye nezinsizakusebenza zesistimu. Amanye ala mathuluzi abe khona isikhathi eside. Isibonelo, i-top yavela ngo-1984, kanti ukukhishwa kokuqala kwe-du kuqale ngo-1971.
Ngokuhamba kweminyaka, lawa mathuluzi enziwe esimanjemanje futhi athuthelwa ezinhlelweni ezihlukene, kodwa ngokuvamile awazange asuke kude nezinguqulo zawo zokuqala, ukubukeka kwawo nokusebenziseka kwawo nakho akushintshile kakhulu.
Lawa ngamathuluzi amahle kakhulu abalulekile kubaphathi abaningi bezinhlelo. Kodwa-ke, umphakathi uthuthukise amathuluzi ahlukile anikeza izinzuzo ezengeziwe. Amanye afaka nje isikhombikubona sesimanje nesikhangayo, kanti amanye athuthukisa kakhulu ukusetshenziswa. Kulokhu kuhumusha, sizoxoxa ngezindlela ezinhlanu ezingasetshenziswa esikhundleni samathuluzi ajwayelekile omugqa womyalo. Linux.
1. ncdu vs du
I-NCurses Disk Ukusetshenziswa () ifana ne-du, kodwa inokusebenzelana okusekelwe kulabhulali yeziqalekiso. I-ncdu ibonisa ukwakheka kohla lwemibhalo oluthatha iningi lesikhala sakho sediski.
ncdu ihlaziya idiski bese ikhombisa imiphumela ehlungwe ngezinkomba noma amafayela asetshenziswa kakhulu, isibonelo:
ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/rgerardi ------------------------------------------------------------
96.7 GiB [##########] /libvirt
33.9 GiB [### ] /.crc
7.0 GiB [ ] /Projects
. 4.7 GiB [ ] /Downloads
. 3.9 GiB [ ] /.local
2.5 GiB [ ] /.minishift
2.4 GiB [ ] /.vagrant.d
. 1.9 GiB [ ] /.config
. 1.8 GiB [ ] /.cache
1.7 GiB [ ] /Videos
1.1 GiB [ ] /go
692.6 MiB [ ] /Documents
. 591.5 MiB [ ] /tmp
139.2 MiB [ ] /.var
104.4 MiB [ ] /.oh-my-zsh
82.0 MiB [ ] /scripts
55.8 MiB [ ] /.mozilla
54.6 MiB [ ] /.kube
41.8 MiB [ ] /.vim
31.5 MiB [ ] /.ansible
31.3 MiB [ ] /.gem
26.5 MiB [ ] /.VIM_UNDO_FILES
15.3 MiB [ ] /Personal
2.6 MiB [ ] .ansible_module_generated
1.4 MiB [ ] /backgrounds
944.0 KiB [ ] /Pictures
644.0 KiB [ ] .zsh_history
536.0 KiB [ ] /.ansible_async
Total disk usage: 159.4 GiB Apparent size: 280.8 GiB Items: 561540
Ungazulazula kokufakiwe usebenzisa okhiye bemicibisholo. Uma ucindezela u-Enter, i-ncdu izobonisa okuqukethwe kohlu olukhethiwe:
--- /home/rgerardi/libvirt ----------------------------------------------------
/..
91.3 GiB [##########] /images
5.3 GiB [ ] /media
Ungasebenzisa leli thuluzi ukuze, isibonelo, unqume ukuthi yimaphi amafayela athatha isikhala sediski kakhulu. Ungaya kuhla lwemibhalo lwangaphambilini ngokucindezela ukhiye womcibisholo wesokunxele. Nge-ncdu ungasusa amafayela ngokucindezela inkinobho ethi d. Icela ukuqinisekiswa ngaphambi kokususa. Uma ufuna ukukhubaza isici sokususa ukuze uvimbele ukulahlekelwa ngephutha kwamafayela abalulekile, sebenzisa inketho ethi -r ukuze unike amandla imodi yokufinyelela yokufunda kuphela: ncdu -r.
I-ncdu iyatholakala kumapulatifomu amaningi kanye nokusatshalaliswa. LinuxIsibonelo, ungasebenzisa i-dnf ukuyifaka ku-Fedora ngqo kusuka ezindaweni zokugcina ezisemthethweni:
$ sudo dnf install ncdu
2. i-htop vs phezulu
iyisibukeli senqubo esisebenzisanayo esifana nephezulu, kodwa ngaphandle kwebhokisi sinikeza ulwazi oluhle lomsebenzisi. Ngokuzenzakalelayo, i-htop ibonisa ulwazi olufanayo noluphezulu, kodwa ngendlela ebonakalayo nenemibala eminingi.
Ngokuzenzakalelayo i-htop ibonakala kanje:

Ngokungafani phezulu:

Ukwengeza, i-htop ibonisa ulwazi lokubuka konke mayelana nesistimu phezulu, kanye nephaneli yokusebenzisa imiyalo kusetshenziswa izinkinobho zokusebenza ezansi. Ungayimisa ngokucindezela okuthi F2 ukuze uvule isikrini sokumisa. Kumasethingi, ungakwazi ukushintsha imibala, wengeze noma ususe amamethrikhi, noma ushintshe izinketho zokubonisa zephaneli yokubuka konke.
Nakuba ungakwazi ukuzuza ukusebenziseka okufanayo ngokulungisa izilungiselelo zezinguqulo zakamuva ze-top, i-htop inikeza ukucushwa okuzenzakalelayo okulula, okwenza kube lula futhi kube lula ukukusebenzisa.
3. tldr vs indoda
Ithuluzi lomugqa womyalo we-tldr libonisa ulwazi losizo olwenziwe lula mayelana nemiyalo, ikakhulukazi izibonelo. Yathuthukiswa umphakathi .
Kuyaqapheleka ukuthi i-tldr ayithatheli umuntu. Kuseyithuluzi lokuphuma kwekhasi lomuntu elisemthethweni neliphelele. Nokho, kwezinye izimo umuntu akanamandla. Uma ungadingi ulwazi olubanzi mayelana nomyalo, uzama nje ukukhumbula ukusetshenziswa kwawo okuyisisekelo. Isibonelo, ikhasi lendoda lomyalo we-curl liqukethe cishe imigqa engu-3000. Ikhasi le-tldr lokugoqa linemigqa engama-40 ubude. Isiqephu salo sibukeka kanje:
$ tldr curl
# curl
Transfers data from or to a server.
Supports most protocols, including HTTP, FTP, and POP3.
More information: <https://curl.haxx.se>.
- Download the contents of an URL to a file:
curl http://example.com -o filename
- Download a file, saving the output under the filename indicated by the URL:
curl -O http://example.com/filename
- Download a file, following [L]ocation redirects, and automatically [C]ontinuing (resuming) a previous file transfer:
curl -O -L -C - http://example.com/filename
- Send form-encoded data (POST request of type `application/x-www-form-urlencoded`):
curl -d 'name=bob' http://example.com/form
- Send a request with an extra header, using a custom HTTP method:
curl -H 'X-My-Header: 123' -X PUT http://example.com
- Send data in JSON format, specifying the appropriate content-type header:
curl -d '{"name":"bob"}' -H 'Content-Type: application/json' http://example.com/users/1234
... TRUNCATED OUTPUT
I-TLDR isho ukuthi βinde kakhulu; akazange afunde": okusho ukuthi, omunye umbhalo awuzange uzitshwe ngenxa yegama-zwi lawo elidlulele. Igama lifanele leli thuluzi ngoba amakhasi wesilisa, nakuba ewusizo, ngezinye izikhathi angaba made kakhulu.
Ku-Fedora, i-tldr yabhalwa nge-Python. Ungayifaka usebenzisa umphathi we-dnf. Ngokuvamile, ithuluzi lidinga ukufinyelela kwe-inthanethi ukuze lisebenze. Kodwa iklayenti le-Fedora's Python livumela lawa makhasi ukuthi alandwe futhi agcinwe ukuze afinyelele ungaxhunyiwe ku-inthanethi.
4.jq vs sed/grep
I-jq iyiphrosesa ye-JSON yomugqa womyalo. Ifana ne-sed noma i-grep, kodwa yakhelwe ngokuqondile ukusebenza nedatha ye-JSON. Uma ungunjiniyela noma umlawuli wesistimu osebenzisa i-JSON emisebenzini yansuku zonke, leli ithuluzi lakho.
Inzuzo enkulu ye-jq ngaphezu kwamathuluzi ajwayelekile okucubungula umbhalo njenge-grep ne-sed ukuthi iqonda ukwakheka kwedatha ye-JSON, okukuvumela ukuthi udale imibuzo eyinkimbinkimbi ngendlela eyodwa.
Isibonelo, uzama ukuthola amagama esiqukathi kuleli fayela le-JSON:
{
"apiVersion": "v1",
"kind": "Pod",
"metadata": {
"labels": {
"app": "myapp"
},
"name": "myapp",
"namespace": "project1"
},
"spec": {
"containers": [
{
"command": [
"sleep",
"3000"
],
"image": "busybox",
"imagePullPolicy": "IfNotPresent",
"name": "busybox"
},
{
"name": "nginx",
"image": "nginx",
"resources": {},
"imagePullPolicy": "IfNotPresent"
}
],
"restartPolicy": "Never"
}
}
Qalisa i-grep ukuze uthole igama leyunithi yezinhlamvu:
$ grep name k8s-pod.json
"name": "myapp",
"namespace": "project1"
"name": "busybox"
"name": "nginx",
I-grep ibuyise yonke imigqa equkethe igama legama. Ungangeza ezinye izinketho ezimbalwa ku-grep ukuze uyikhawulele, futhi usebenzise ukukhohlisa kwenkulumo evamile ukuthola amagama esiqukathi.
Ukuze uthole umphumela ofanayo usebenzisa i-jq, vele ubhale:
$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"
Lo myalo uzokunikeza amagama azo zombili iziqukathi. Uma ubheka kuphela igama lesiqukathi sesibili, engeza inkomba yesici samalungu afanayo kunkulumo:
$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"
Njengoba i-jq yazi ngesakhiwo sedatha, ikhiqiza imiphumela efanayo ngisho noma ifomethi yefayela ishintsha kancane. I-grep ne-sed kungenzeka ingasebenzi kahle kuleli cala.
I-jq inemisebenzi eminingi, kodwa enye indatshana iyadingeka ukuyichaza. Ukuze uthole ulwazi olwengeziwe sicela uthinte jq noma ku-tldr.
5. fd vs ukuthola
iyindlela ehlukile eyenziwe lula yokuthola usizo. I-Fd ayihloselwe ukuyishintsha ngokuphelele: inezilungiselelo ezivame kakhulu ezifakwe ngokuzenzakalelayo, ezichaza indlela evamile yokusebenza ngamafayela.
Isibonelo, lapho usesha amafayela kuhla lwemibhalo lwekhosombe le-Git, i-fd ayifaki ngokuzenzakalela amafayela afihliwe nezinhla zemibhalo ezingaphansi, okuhlanganisa uhla lwemibhalo lwe-.git, futhi iyaziba amakhadi asendle asuka kufayela elithi .gitignore. Sekukonke, isheshisa ukusesha ngokubuyisela imiphumela ehlobene kakhulu emzamweni wokuqala.
Ngokuzenzakalelayo, i-fd yenza usesho olungazweli kuhla lwemibhalo lwamanje, olunombala ophumayo. Ukusesha okufanayo usebenzisa umyalo wokuthola kudinga ukufaka imingcele eyengeziwe emugqeni womyalo. Isibonelo, ukuze uthole wonke amafayela e-.md (noma .MD) kuhla lwemibhalo lwamanje, ungabhala umyalo wokuthola onjengalo:
$ find . -iname "*.md"
Ku-fd kubukeka kanje:
$ fd .md
Kodwa kwezinye izimo, i-fd nayo idinga izinketho ezengeziwe: isibonelo, uma ufuna ukufaka amafayela afihliwe nezinkomba, kufanele usebenzise inketho -H, nakuba lokhu ngokuvamile kungadingeki lapho usesha.
i-fd iyatholakala ekusakazweni okuningi. LinuxKu-Fedora, ungayifaka kanje:
$ sudo dnf install fd-find
Akumele uyeke noma yini
Ingabe usebenzisa amathuluzi amasha omugqa wemiyalo? LinuxNoma usebenzisa ezindala kuphela? Kodwa kungenzeka kakhulu ukuthi une-combo, akunjalo? Sicela wabelane ngolwazi lwakho kumazwana.
Emalungelo Wokukhangisa
Iningi lamakhasimende ethu seliyazisile izinzuzo amaseva amaqhawe!
Yilokho , imvamisa ye-CPU core ifika ku-3.4 GHz. Ukucushwa okuphezulu kuzokuvumela ukuthi ube nokuqhuma - 128 CPU cores, 512 GB RAM, 4000 GB NVMe. Shesha uku-oda!
Source: www.habr.com
