Nekushandisa dzimwe nzira dzechizvino-zvino padivi pechikuru chekuraira maturusi, unogona kunakidzwa uye kunyange kuvandudza chibereko chako.
Mubasa redu remazuva ese paLinux/Unix, tinoshandisa akawanda maturusi emitsara - semuenzaniso, du yekutarisa mashandisirwo edhisiki uye zviwanikwa zvehurongwa. Zvimwe zvezvishandiso izvi zvave zviripo kwenguva yakareba. Semuenzaniso, yepamusoro yakaonekwa muna 1984, uye yekutanga kuburitswa kwe du yakadzokera ku1971.
Kwemakore, maturusi aya akagadziridzwa uye akaiswa kune akasiyana masisitimu, asi kazhinji haana kuenda kure neshanduro dzavo dzekutanga, chitarisiko chavo uye usability hazvinawo kuchinja zvakanyanya.
Aya maturusi makuru anodiwa nevazhinji vatariri vehurongwa. Nekudaro, nharaunda yakagadzira mamwe maturusi anopa mamwe mabhenefiti. Mamwe acho anongove neazvino, yakanaka interface, nepo mamwe achivandudza usability. Mushanduro iyi, tichataura nezve shanu dzimwe nzira kune yakajairwa Linux command line maturusi.
1. ncdu vs du
Nurses Disk Kushandiswa (
ncdu inoongorora dhisiki uye yobva yaratidza mhinduro dzakarongwa nemadhairekitori kana mafaera anowanzo shandiswa, semuenzaniso:
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
Unogona kufamba mukati mezvinyorwa uchishandisa makiyi emiseve. Kana ukadzvanya Enter, ncdu inoratidza zviri mukati medhairekitori rakasarudzwa:
--- /home/rgerardi/libvirt ----------------------------------------------------
/..
91.3 GiB [##########] /images
5.3 GiB [ ] /media
Iwe unogona kushandisa chishandiso ichi, semuenzaniso, kuona kuti ndeapi mafaera ari kutora zvakanyanya dhisiki nzvimbo. Iwe unogona kuenda kune yakapfuura dhairekitori nekudzvanya kuruboshwe museve kiyi. Ne ncdu unogona kudzima mafaera nekudzvanya d kiyi. Inokumbira kusimbiswa isati yadzima. Kana iwe uchida kudzima iyo yekudzima kuti udzivise kurasikirwa netsaona kwemafaira akakosha, shandisa iyo -r sarudzo yekugonesa yekuverenga-chete nzira yekuwana: ncdu -r.
ncdu inowanikwa kune akawanda Linux mapuratifomu uye kugovera. Semuenzaniso, unogona kushandisa dnf kuiisa paFedora zvakananga kubva kune zviri pamutemo repositori:
$ sudo dnf install ncdu
2. htop vs kumusoro
By default htop inoita seizvi:
Kusiyana nepamusoro:
Pamusoro pezvo, htop inoratidza ruzivo rwepamusoro nezve system kumusoro, uye pani yekumhanyisa mirairo uchishandisa makiyi ebasa pazasi. Iwe unogona kuzvigadzirisa nekudzvanya F2 kuvhura iyo yekumisikidza skrini. Mune Zvirongwa, unogona kushandura mavara, kuwedzera kana kubvisa metrics, kana kushandura maratidziro esarudzo dzepaneru.
Kunyangwe iwe uchigona kuzadzisa kushandiswa kwakafanana nekugadzirisa zvigadziriso zveazvino mavhezheni epamusoro, htop inopa zviri nyore zvigadziriso zvigadziriso, izvo zvinoita kuti zvive nyore uye nyore kushandisa.
3. tldr vs murume
Iyo tldr yekuraira mutsara chishandiso inoratidza yakareruka ruzivo ruzivo nezve mirairo, kazhinji mienzaniso. Yakagadzirwa nenharaunda
Zvakakosha kuziva kuti tldr haisi kutsiva murume. Iyo ichiri yecanonical uye yakanyanya kuwanda yemunhu peji yekuburitsa chishandiso. Zvisinei, mune zvimwe zviitiko munhu haana basa. Kana iwe usingade ruzivo rwakakwana nezve murairo, uri kungoyedza kurangarira mashandisiro ayo ekutanga. Semuenzaniso, peji remurume reiyo curl command rine ingangoita 3000 mitsetse. Iyo tldr peji rekupeta ine mitsetse makumi mana kureba. Chikamu chayo chinotaridzika seizvi:
$ 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
TLDR zvinoreva kuti βkurebesa; haana kuverenga": kureva kuti, mamwe manyoro haana kufuratirwa nekuda kwemazwi akawandisa. Iro zita rakakodzera chishandiso ichi nekuti mapeji emurume, kunyange achibatsira, dzimwe nguva anogona kureba.
Kune Fedora, tldr yakanyorwa muPython. Unogona kuimisa uchishandisa dnf maneja. Kazhinji, chishandiso chinoda kuwana internet kuti ishande. Asi Fedora's Python mutengi anobvumira aya mapeji kutorwa uye kuvharirwa kuti awane kunze kwepamhepo.
4.jq vs sed/grep
jq iJSON processor yemutsetse wekuraira. Yakafanana ne sed kana grep, asi yakanyatsogadzirirwa kushanda neJSON data. Kana iwe uri mugadziri kana sisitimu maneja anoshandisa JSON mumabasa emazuva ese, ichi ndicho chishandiso chako.
Mukana mukuru wejq pamusoro peyakajairwa mameseji ekugadzirisa maturusi akadai se grep uye sed ndeyekuti inonzwisisa iyo JSON data chimiro, ichikubvumidza iwe kugadzira yakaoma mibvunzo mukutaura kumwe chete.
Semuenzaniso, uri kuyedza kutsvaga mazita emidziyo mune iyi JSON faira:
{
"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"
}
}
Mhanya grep kuti uwane zita retambo:
$ grep name k8s-pod.json
"name": "myapp",
"namespace": "project1"
"name": "busybox"
"name": "nginx",
grep yakadzosa mitsetse yese ine zita rezita. Iwe unogona kuwedzera mamwe mashoma sarudzo ku grep kuirambidza, uye shandisa imwe yenguva yekutaura manipulation kuti uwane mazita emidziyo.
Kuti uwane mhedzisiro imwe chete uchishandisa jq, ingonyora:
$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"
Murairo uyu uchakupa mazita emidziyo miviri. Kana iwe uchitsvaga chete zita rechipiri mudziyo, wedzera indekisi ye array element kune chirevo:
$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"
Sezvo jq ichiziva nezve dhizaini yedata, inoburitsa zvakafanana mhedzisiro kunyangwe iyo faira fomati yakachinja zvishoma. grep uye sed inogona kusashanda nemazvo mune iyi kesi.
jq ine mabasa mazhinji, asi chimwe chinyorwa chinodiwa kuzvitsanangura. Kuti uwane rumwe ruzivo ndapota taura
5. fd vs kuwana
Semuenzaniso, paunenge uchitsvaga mafaera muGit repository dhairekitori, fd inobvisa otomatiki mafaera akavanzika uye subdirectories, kusanganisira iyo .git dhairekitori, uye zvakare inofuratira wildcards kubva ku.gitignore faira. Pakazere, inomhanyisa tsvakiridzo nekudzorera zvimwe zvinechekuita pakuedza kwekutanga.
Nekumisikidza, fd inoita nyaya-isinganzwe kutsvaga mune yazvino dhairekitori, ine ruvara kubuda. Kutsvaga kwakafanana uchishandisa murairo wekutsvaga kunoda kuisa mamwe ma parameter pamutsara wekuraira. Semuyenzaniso, kuti uwane ese .md (kana .MD) mafaera mudhairekitori razvino, unonyora tsvaga kuraira seizvi:
$ find . -iname "*.md"
Kune fd zvinoita seizvi:
$ fd .md
Asi mune dzimwe nguva, fd inodawo zvimwe zvingasarudzwa: semuenzaniso, kana iwe uchida kuisa mafaira akavanzika uye madhairekitori, unofanirwa kushandisa -H sarudzo, kunyangwe izvi zvisingawanzo kudikanwa paunenge uchitsvaga.
fd inowanikwa kune akawanda Linux kugoverwa. MuFedora inogona kuiswa seizvi:
$ sudo dnf install fd-find
Iwe haufaniri kurega chero chinhu
Uri kushandisa iyo itsva Linux command line maturusi? Kana kuti iwe unogara chete pane yekare? Asi kazhinji iwe une combo, handiti? Ndokumbira ugovane ruzivo rwako mumhinduro.
Pamusoro pekodzero dzekutsvaga
Vazhinji vevatengi vedu vakatotenda mabhenefiti epic servers!
ichi
Source: www.habr.com