Uzante pli modernajn alternativojn kune kun pli malnovaj komandliniaj iloj, vi povas amuziĝi kaj eĉ plibonigi vian produktivecon.
En nia ĉiutaga laboro en Linukso/Unikso, ni uzas multajn komandliniajn ilojn - ekzemple por kontroli la uzadon de disko kaj sistemajn rimedojn. Iuj el ĉi tiuj iloj ekzistas delonge. Ekzemple, top aperis en 1984, kaj la unua eldono de du devenas de 1971.
Tra la jaroj, ĉi tiuj iloj estis modernigitaj kaj portitaj al malsamaj sistemoj, sed ĝenerale ili ne malproksimiĝis de siaj unuaj versioj, ilia aspekto kaj uzebleco ankaŭ ne multe ŝanĝiĝis.
Ĉi tiuj estas bonegaj iloj, kiujn multaj sistemaj administrantoj bezonas. Tamen, la komunumo evoluigis alternativajn ilojn kiuj ofertas pliajn avantaĝojn. Kelkaj el ili simple havas modernan, belan interfacon, dum aliaj multe plibonigas uzeblecon. En ĉi tiu traduko, ni parolos pri kvin alternativoj al normaj Linuksaj komandliniaj iloj.
1. ncdu vs du
NCurses Diska Uzado (
ncdu analizas la diskon kaj poste montras la rezultojn ordigitajn laŭ la plej ofte uzataj dosierujoj aŭ dosieroj, ekzemple:
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
Vi povas navigi tra la enskriboj per la sagoklavoj. Se vi premas Enter, ncdu montros la enhavon de la elektita dosierujo:
--- /home/rgerardi/libvirt ----------------------------------------------------
/..
91.3 GiB [##########] /images
5.3 GiB [ ] /media
Vi povas uzi ĉi tiun ilon por, ekzemple, determini, kiuj dosieroj okupas la plej grandan spacon en disko. Vi povas iri al la antaŭa dosierujo premante la maldekstran sagoklavon. Kun ncdu vi povas forigi dosierojn premante la d-klavon. Ĝi petas konfirmon antaŭ ol forigi. Se vi volas malŝalti la forigon por malhelpi hazardan perdon de valoraj dosieroj, uzu la opcion -r por ebligi nurlegeblan reĝimon: ncdu -r.
ncdu estas disponebla por multaj Linukso-platformoj kaj distribuoj. Ekzemple, vi povas uzi dnf por instali ĝin sur Fedora rekte de la oficialaj deponejoj:
$ sudo dnf install ncdu
2. htop vs supro
Defaŭlte htop aspektas jene:
Male al supro:
Krome, htop montras superrigardajn informojn pri la sistemo ĉe la supro, kaj panelon por ruli komandojn uzante funkcioklavojn malsupre. Vi povas agordi ĝin premante F2 por malfermi la agordan ekranon. En Agordoj, vi povas ŝanĝi kolorojn, aldoni aŭ forigi metrikojn aŭ ŝanĝi la opciojn de ekrano de superrigardo de la panelo.
Kvankam vi povas atingi similan uzeblecon tajlante la agordojn de la plej novaj versioj de top, htop disponigas oportunajn defaŭltajn agordojn, kio faras ĝin pli praktika kaj pli facila uzi.
3. tldr vs viro
La ilo de komandlinio tldr montras simpligitajn helpajn informojn pri komandoj, plejparte ekzemplojn. Ĝi estis evoluigita de la komunumo
Indas noti, ke tldr ne estas anstataŭaĵo por homo. Ĝi ankoraŭ estas la kanona kaj plej ampleksa manpaĝa eligo-ilo. Tamen, en kelkaj kazoj la homo estas superflua. Kiam vi ne bezonas ampleksajn informojn pri komando, vi nur provas memori ĝiajn bazajn uzojn. Ekzemple, la manpaĝo por la bukla komando enhavas preskaŭ 3000 liniojn. La tldr-paĝo por buklo longas 40 liniojn. Ĝia fragmento aspektas jene:
$ 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 signifas "tro longa; ne legis": tio estas, ia teksto estis ignorita pro ĝia troa vorteco. La nomo taŭgas por ĉi tiu ilo ĉar la manpaĝoj, kvankam utilaj, foje povas esti tro longaj.
Por Fedora, tldr estis skribita en Python. Vi povas instali ĝin per dnf-manaĝero. Tipe, la ilo postulas retaliron por funkcii. Sed la Python-kliento de Fedora permesas elŝuti kaj konservi ĉi tiujn paĝojn por eksterreta aliro.
4.jq vs sed/grep
jq estas JSON-procesoro por la komandlinio. Ĝi similas al sed aŭ grep, sed estas specife desegnita por labori kun JSON-datumoj. Se vi estas programisto aŭ sistemadministranto, kiu uzas JSON en ĉiutagaj taskoj, ĉi tiu estas la ilo por vi.
La ĉefa avantaĝo de jq super normaj tekstprilaboraj iloj kiel grep kaj sed estas ke ĝi komprenas la JSON-datumstrukturon, ebligante vin krei kompleksajn demandojn en ununura esprimo.
Ekzemple, vi provas trovi ujajn nomojn en ĉi tiu JSON-dosiero:
{
"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"
}
}
Rulu grep por trovi la ĉennomon:
$ grep name k8s-pod.json
"name": "myapp",
"namespace": "project1"
"name": "busybox"
"name": "nginx",
grep resendis ĉiujn liniojn enhavantajn la vorton nomo. Vi povas aldoni kelkajn pliajn eblojn al grep por limigi ĝin, kaj uzi iun regulan esprimon manipuladon por trovi la ujajn nomojn.
Por akiri la saman rezulton uzante jq, simple skribu:
$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"
Ĉi tiu komando donos al vi la nomojn de ambaŭ ujoj. Se vi serĉas nur la nomon de la dua ujo, aldonu la indekson de la tabelelemento al la esprimo:
$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"
Ĉar jq scias pri la datumstrukturo, ĝi produktas la samajn rezultojn eĉ se la dosierformato iomete ŝanĝiĝas. grep kaj sed eble ne funkcias ĝuste en ĉi tiu kazo.
jq havas multajn funkciojn, sed necesas alia artikolo por priskribi ilin. Por pliaj informoj bonvolu kontakti
5. fd vs trovi
Ekzemple, serĉante dosierojn en dosierujo de Git, fd aŭtomate ekskludas kaŝitajn dosierojn kaj subdosierujojn, inkluzive de la dosierujo .git, kaj ankaŭ ignoras ĵokerojn de la dosiero .gitignore. Ĝenerale, ĝi akcelas serĉojn resendante pli rilatajn rezultojn je la unua provo.
Defaŭlte, fd faras serĉon malsentema en la nuna dosierujo, kun kolora eligo. La sama serĉo uzante la komandon find postulas enigi pliajn parametrojn sur la komandlinio. Ekzemple, por trovi ĉiujn .md (aŭ .MD) dosierojn en la nuna dosierujo, vi skribus find komandon jene:
$ find . -iname "*.md"
Por fd ĝi aspektas jene:
$ fd .md
Sed en iuj kazoj, fd ankaŭ postulas pliajn opciojn: ekzemple, se vi volas inkluzivi kaŝitajn dosierojn kaj dosierujojn, vi devas uzi la opcion -H, kvankam ĉi tio kutime ne estas postulata dum serĉado.
fd disponeblas por multaj Linukso-distribuoj. En Fedora ĝi povas esti instalita tiel:
$ sudo dnf install fd-find
Vi ne devas rezigni ion ajn
Ĉu vi uzas la novajn Linuksajn komandliniajn ilojn? Aŭ ĉu vi sidas ekskluzive sur la malnovaj? Sed plej verŝajne vi havas kombon, ĉu ne? Bonvolu dividi vian sperton en la komentoj.
Pri la Rajtoj de Reklamado
Multaj el niaj klientoj jam aprezis la avantaĝojn epopeaj serviloj!
ĉi
fonto: www.habr.com