Chocolatey: Windows alatka za komandnu liniju za upravljanje softverom sa 8.2k+ GitHub zvezdica, neverovatno dobra!
Sijao Er je novi stažista u kompaniji, ranije je tokom intervjua odgovarao brzo i tečno, tako da sam ga jako cenio. Prvog dana sam mu dao novi računar i tražio mu da prvo lokalno postavi Java razvojno okruženje.
Bez mnogo reči, on je počeo da radi neprestano. Nisam mogao da verujem da je instalirao JDK preko komandne linije, jednom komandom je završio! Čak nije moralo da se konfigurišu okolinske promenljive, što je daleko prevazišlo moja očekivanja.
Mislio sam da će naivno da radi "sledeći, sledeći" kako bi instalirao JDK, ovako.

Zatim ovako konfiguriše okolinske promenljive.

Ali on je ovako, samo jedna linija komande, okolinske promenljive nije potrebno konfigurisati!

Bre! Sjajno i sofisticirano!
Gledajući njegovo vešto instaliranje JDK-a preko komandne linije, rog uglovi mi počeo da se blago podiže, zaista dobro! Konačno sam angažovao pouzdanu osobu.
Zato sam mu zadao da napravi zapisnik, planirajući da objavim na mojoj maloj stranici "Autor-n put do naprednog Java-a". Od njega sam saznao da alat za upravljanje softverom preko komandne linije koji koristi zove chocolatey, što je menadžer softvera preko komandne linije za Windows, već ima 8.2k+ zvezdica na GitHub-u, može praktično da omogućite programerima da instaliraju softver na Linux-u koristeći yum komandu ili na macOS-u koristeći brew komandu, vrlo je fascinantno.

Evo njegovog zapisnika, zajedno da uživamo.
Prvo upoznamo shell
Za Java backend programera, u početnoj fazi, možete birati da direktno kompajlirate i izvršavate Java kôd u IDE-u, ali ponekad treba i da kompajlirate i izvršavate Java kôd u Shell-u.
Windows-ov inherent Shell se zove Command Prompt ili cmd ili powershell, macOS-ov se zove terminal.
Kada treba da deployed-uješ Java projekat u proizvodnom okruženju ili da pregledate logove, neizbežno ćete koristiti Shell, u ovoj fazi učestalost korišćenja Shell-a je toliko visoka da se može opisati sa jednom frazom - stalni pratilac.
Neki third-party softveri nude moćnije funkcije na osnovu inherent Shell-a, česti su tabby, Warp, xhsell, FinalShell, MobaXterm, Aechoterm, WindTerm, termius, iterm2 i tako dalje, neki samo na Windows-u, neki samo na macOS-u, neki podržavaju sve platforme. Takođe postoje alatki kao ohmyzsh za ukrašavanje Shell-a.
Ovde navodimo neke osnovne komande Shell-a (Windows i macOS/Linux imaju male razlike):
- Prebacivanje direktorijuma, možete koristiti cd komandu da prebacujete direktorijume,
cd ..vraća se u gornji direktorijum.

Lista direktorijuma, na macos/linux-u možete koristiti ls komandu da izlistate sve fajlove i poddirektorijume u direktorijumu (na Windows-u koristi dir komandu), koristi joker
*da filtrirate sadržaj, na primerls *.javaizlistava sve fajlove sa.javaekstenzijom, ako hoćete da idete dalje, možete koristitils H*.javada izlistate sve fajlove koji počinju sa H i imaju.javaekstenziju.Kreiranje novog direktorijuma, na macOS/Linux-u možete koristiti mkdir komandu da kreirate novi direktorijum (na primer
mkdir hellokreira hello direktorijum), na Windows-u možete koristiti md komandu.Brisanje fajla, na macOS/Linux-u možete koristiti
rmkomandu da obrišete fajl (na primerrm hello.javabriše hello.java fajl), na Windows-u možete koristiti del komandu.Brisanje direktorijuma, na macOS/Linux-u možete koristiti
rm -rkomandu da obrišete direktorijum i sve fajlove u njemu (na primerrm -r hellobriše hello direktorijum). Na Windows-u možete koristiti rmdir komandu.Ponavljanje komande, na macOS/Linux/Windows-u možete koristiti gornje i donje strelice da birete prethodno izvršene komande.

- Istorija komandi, na macOS/Linux-u možete koristiti
historykomandu da vidite sve korišćene komande. Na Windows-u možete pritisnuti F7 taster.

- Raspakivanje fajla, fajl sa ekstenzijom ".zip" je kompresovani paket koji sadrži druge fajlove, macOS/Linux sistem sam nudi unzip komandu za raspakivanje, Windows zahteva ručnu instalaciju.
Zatim upoznamo chocolatey
Prvo instalirajte chocolatey. Ovo je menadžer softvera preko komandne linije za Windows, može praktično da omogućite programerima da instaliraju softver na Linux-u koristeći yum komandu ili na macOS-u koristeći brew komandu, vrlo je fascinantno.
The biggest challenge is reducing duplication of effort, so users turn to Chocolatey for simplicity
Tradicionalni način instalacije je ili veoma spor ili veoma neefikasan, instalacija softvera preko komandne linije je ne samo jednostavna i efikasna, već i automatski može da nam pomogne da konfigurišemo okolinske promenljive.
- Zvanična adresa: https://chocolatey.org/
- Instalaciona dokumentacija: https://chocolatey.org/install#individual
Prvi korak, otvorite cmd komandnu liniju kao administrator.

Drugi korak, izvrši sledeću komandu:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))Sačekaj malo i instalacija će biti završena.
Nakon instalacije izgleda ovako:

Ako niste siguran da li je instalacija uspela, možete potvrditi unošenjem choco komande.

Ovde preporučujem nekoliko vrlo efikasnih komandi:
- choco search xxx, pronađi xxx instalacioni paket
- choco info xxx, prikaži informacije o xxx instalacionom paketu
- choco install xxx, instalirajte xxx softver
- choco upgrade xxx, ažuriraj xxx softver
- choco uninstall xxx, deinstaliraj xxx softver
Kako znati koji instalacioni paketi su dostupni u chocolatey spremištu?
Možete preko gore pomenutog načina komandne linije, takođe možete posetiti zvanično spremište da filtrirate.
Na primer, da potražimo Java.

Dobro, sada možete direktno u shell-u uneti choco install jdk8 da instalirate JDK8, i automatski će dodati Java u okolinske promenljive, ne treba ići u "Moj računar", "Okolinske promenljive" da kreirate JAVA_HOME i kopirate JDK instalacionu putanju da konfigurirate PATH promenljivu, zar nije vrlo nice?
Sačekaj malo, unesite java -version možete potvrditi da li je Java uspešno instalirana.

Moram priznati! Vrlo nice!
Još primer, instalacija Redis-a, samo treba naći Redis instalacionu komandu u Choco-u i izvršiti i to je to.

Instalacija Git-a:
choco install git.installInstalacija node.js
choco install nodejs.installInstalacija 7zip-a
choco install 7zipInstalacija Filezilla-e
choco install filezillaSoftverskih paketa u Choco-u je vrlo mnogo, uglavnom svi česti instalacioni paketi u razvoju softvera postoje.

Zaključak
Kroz Sijao Er-ove praktične beleške možemo saznati.
U poređenju s preuzimanjem instalacionog paketa i instalacijom JDK-a preko grafičkog sučelja, zatim "sledeći, sledeći", da li se osećate da je instalacija JDK-a u Shell-u malo više fascinantna?
Ključno je i da se izbeglo konfigurisanje okolinskih promenljivih.
Još nisam izašao iz novačkog sela, često su me mučile konfiguracije okolinskih promenljivih. Ovaj način instalacije preko komandne linije je sto puta lakši od ručnog konfigurisanja okolinskih promenljivih, a i teže je napraviti grešku.
Kroz Choco možete centralizovano instalirati, upravljati i ažurirati razne softvere. Posebno pogodno za upravljanje nekim lakim open source softverom, jedna komanda se završava, prilikom ažuriranja je takođe pogodno, ne treba ponovo preuzimati novi instalacioni paket, može efektivno izleči simptome primorane ažuriranje opsesivnih pacijenata.
Ako ne hoćete posebno da podešavate, Chocolatey-ova opšta operacija i korišćenje su prilično prijateljski. Čak i početnici koji su tek dodirnuli softverski razvoj mogu direktno da koriste, a prolaznici će misliti da ste posebnli vešt.
