Memindahkan Pengembangan JavaScript Anda ke Bash Di Windows
Diterbitkan: 2022-03-10Saya salah satu dari orang-orang yang tidak bisa hidup tanpa terminal Bash mereka. Satu-satunya fakta ini telah mempersulit saya untuk melakukan pekerjaan frontend di Windows. Saya bekerja di Microsoft dan saya menggunakan Mac. Tidak sampai garis perangkat keras Surface baru keluar beberapa tahun yang lalu, saya menyadari: Saya harus memiliki salah satunya .
Jadi saya punya satu. Surface Book 2 yang menjalankan Windows 10 tepatnya. Saya sedang menyusun artikel ini sekarang. Dan bagaimana dengan permintaan Bash saya yang manis dan manis? Yah, aku membawanya bersamaku, tentu saja.
Pada artikel ini, saya akan melihat secara mendalam bagaimana teknologi baru di Windows 10 memungkinkan Anda menjalankan terminal Linux lengkap di Windows. Saya juga akan menunjukkan kepada Anda pengaturan terminal saya yang luar biasa (yang dinamai "terbaik" oleh "saya") dan bagaimana Anda juga dapat mengatur mesin pengembangan Windows/Linux Anda sendiri.
Jika Anda mendambakan beberapa perangkat keras Surface itu tetapi tidak dapat hidup tanpa terminal Linux, Anda telah datang ke tempat yang tepat.
Catatan : Pada saat penulisan ini, banyak item dalam artikel ini akan mengharuskan Anda untuk menggunakan atau beralih ke build "preview" atau "orang dalam" dari berbagai item, termasuk Windows. Sebagian besar dari hal-hal ini akan berada di build Windows utama di beberapa titik di masa mendatang.
Subsistem Windows Untuk Linux (WSL)
Subsistem Windows untuk Linux, atau, "WSL" memungkinkan Anda menjalankan Linux di Windows. Tapi apa sebenarnya ilmu gila ini ?
WSL, dalam inkarnasinya saat ini, adalah lapisan terjemahan yang mengubah panggilan sistem Linux menjadi panggilan sistem Windows. Linux berjalan di atas WSL. Itu berarti bahwa untuk mendapatkan Linux di Windows, Anda perlu melakukan tiga hal:
- Aktifkan WSL,
- Instal Linux,
- Selalu sertakan tiga item dalam daftar.
Ternyata, lapisan terjemahan itu agak lambat — seperti saya mencoba mengingat apakah saya perlu splice
atau slice
. Ini terutama benar ketika WSL membaca dan menulis ke sistem file. Itu semacam masalah besar bagi pengembang web karena setiap npm install
yang tepat akan menyalin ribuan file ke mesin Anda. Maksud saya, saya tidak tahu tentang Anda, tetapi saya tidak akan meninggalkan string saya sendiri .
Versi 2 dari WSL adalah cerita yang berbeda. Ini jauh lebih cepat daripada versi saat ini karena memanfaatkan inti virtualisasi di Windows daripada menggunakan lapisan terjemahan. Ketika saya mengatakan itu "jauh lebih cepat", maksud saya jauh, jauh lebih cepat. Seperti secepat saya Googling "sambatan vs irisan".
Untuk alasan itu, saya akan menunjukkan cara menginstal WSL 2. Pada saat penulisan, itu akan mengharuskan Anda untuk berada di "Insider" build Windows.
Hal pertama yang pertama: ikuti panduan singkat ini untuk mengaktifkan WSL di Windows 10 dan periksa nomor versi Windows Anda.
Setelah Anda menginstalnya, tekan tombol Windows dan ketik "windows insider". Kemudian pilih "Pengaturan Program Orang Dalam Windows".
Anda akan memiliki beberapa opsi berbeda tentang "cincin" mana yang Anda inginkan. Banyak orang yang saya kenal berada di ring cepat. Aku orang yang berhati-hati, meskipun. Ketika saya masih kecil, saya akan menuruni seluncuran di taman bermain dengan perut saya berpegangan pada sisi-sisinya. Itulah sebabnya saya tetap berada di ring lambat. Saya sudah menggunakannya selama beberapa bulan sekarang, dan saya merasa itu tidak lebih mengganggu atau tidak stabil daripada Windows biasa.
Ini adalah pilihan yang baik jika Anda menginginkan WSL 2, tetapi Anda tidak ingin mati di slide.
Catatan : Setelah menerbitkan artikel ini, saya mengetahui bahwa WSL 2 sebenarnya tidak berada di jalur lambat. Anda harus berada di ring cepat untuk mendapatkannya. Saya pasti berada di ring cepat di beberapa titik dalam proses penulisan artikel ini. Begitu cepat cincinnya. Semoga sukses di slide!
Selanjutnya, Anda perlu mengaktifkan fitur “Virtual Machine Platform” di Windows, yang diperlukan oleh WSL versi 2. Untuk masuk ke layar ini, tekan tombol Windows dan ketik “windows features”. Kemudian pilih "Aktifkan atau nonaktifkan Fitur Windows". Pilih “Platform Mesin Virtual”. Opsi "Subsistem Windows untuk Linux" seharusnya sudah diaktifkan.
Sekarang setelah WSL diaktifkan, Anda dapat menginstal Linux. Anda melakukan ini, cukup ironis, langsung dari Windows Store. Hanya pada tahun 2019 saya menyarankan Anda "menginstal Linux dari toko Windows".
Ada beberapa distribusi berbeda untuk dipilih, tetapi Ubuntu akan menjadi yang paling didukung di semua alat yang akan kami konfigurasikan nanti — termasuk VS Code. Semua instruksi yang datang dari sini dengan asumsi instalasi Ubuntu. Jika Anda menginstal distro yang berbeda, semua taruhan dibatalkan.
Cari "Ubuntu" dari Windows Store. Akan ada tiga pilihan: Ubuntu, Ubuntu 18.04, dan Ubuntu 16.04. Ubuntu sangat menyukai nomor versi minor 04 itu, bukan?
Distro "Ubuntu" (yang pertama di tangkapan layar ini) adalah "versi meta", atau lebih tepatnya placeholder yang hanya menunjuk ke versi terbaru. Sampai sekarang, itu 18,04.
Saya menggunakan versi meta karena nanti saya akan menunjukkan cara menelusuri sistem file Linux dengan Windows Explorer dan agak berantakan memiliki "Ubuntu 18.04" sebagai nama drive vs hanya "Ubuntu".
Instalasi ini cukup cepat tergantung pada koneksi internet Anda. Ini hanya sekitar 215 megabyte, tetapi saya menggunakan koneksi gigabit di sini dan bagaimana Anda tahu jika seseorang menggunakan koneksi gigabit? Jangan khawatir, mereka akan memberi tahu Anda.
Setelah terinstal, Anda sekarang akan memiliki aplikasi "Ubuntu" di menu mulai Anda.
Jika Anda mengkliknya, Anda akan mendapatkan terminal Bash!
Luangkan waktu sejenak untuk menikmati keajaiban teknologi.
Secara default, Anda akan menjalankan WSL versi 1. Untuk meningkatkan ke versi 2, Anda harus membuka terminal PowerShell dan menjalankan perintah.
Tekan tombol "Windows" dan ketik "Powershell".
Dari terminal PowerShell, Anda dapat melihat versi WSL yang Anda miliki dengan menjalankan wsl --list --verbose
.
Jika Anda menampilkan versi 1, Anda harus menjalankan perintah --set-version
dan menentukan nama instance (Ubuntu) dan versi yang Anda inginkan (2).
wsl --set-version Ubuntu 2
Ini akan memakan waktu sedikit, tergantung pada berapa banyak daging yang dimiliki mesin Anda. Milik saya mengambil "beberapa menit" memberi atau menerima. Setelah selesai, Anda akan berada di versi terbaru dan terhebat dari WSL.
Apakah Otak Anda Di Linux… Di Windows.
Linux bukan Windows. WSL bukan prompt bash di atas sistem operasi Windows. Ini adalah sistem operasi lengkap dengan struktur foldernya sendiri dan aplikasi yang diinstal. Jika Anda menginstal Node dengan penginstal Windows, mengetik node
di Linux akan gagal karena Node tidak diinstal di Linux. Ini diinstal pada Windows.
Keajaiban sebenarnya dari WSL, terletak pada caranya menghubungkan Windows dan Linux dengan mulus sehingga mereka muncul sebagai satu sistem file di mesin Anda.
Navigasi File Dan Folder
Secara default, terminal Ubuntu memasukkan Anda ke direktori home Linux Anda (atau /home/your-user-name
). Anda dapat pindah ke sisi Windows dengan membuka /mnt/c
.
Perhatikan bahwa beberapa izin ditolak di sini. Saya harus mengklik kanan ikon Ubuntu dan mengklik "Run as Administrator" untuk mendapatkan akses ke file-file ini. Beginilah cara Windows meningkatkan izin. Tidak ada sudo di Windows.
Meluncurkan Aplikasi
Anda dapat meluncurkan aplikasi Windows apa pun dari terminal Ubuntu. Misalnya, saya dapat membuka Windows Explorer dari terminal Unbuntu.
Ini juga bekerja secara terbalik. Anda dapat menjalankan aplikasi apa pun yang diinstal di sisi Linux. Di sini saya menjalankan "keberuntungan" yang diinstal di Linux dari baris perintah Windows. (Karena itu bukan instalasi Linux yang tepat tanpa keberuntungan yang acak dan tidak berarti.)
Dua sistem operasi yang berbeda. Dua sistem file yang berbeda. Dua set berbeda dari aplikasi yang diinstal. Lihat bagaimana ini bisa membingungkan?
Untuk menjaga semuanya tetap lurus, saya sarankan Anda menyimpan semua file dan alat pengembangan JavaScript Anda terinstal di sisi Linux. Bisa dikatakan, kemampuan untuk berpindah antara Windows dan Linux dan mengakses file dari kedua sistem adalah keajaiban inti dari WSL. Jangan lupa, karena itulah yang membuat seluruh pengaturan ini lebih baik daripada hanya kotak Linux standar.
Menyiapkan Lingkungan Pengembangan Anda
Mulai sekarang, saya akan memberi Anda daftar item berpendirian untuk apa yang menurut saya membuat Linux pembunuh pada pengaturan Windows. Ingat saja: pendapat saya hanya itu. pendapat . Kebetulan seperti semua pendapat saya, mereka 100% benar.
Mendapatkan Terminal yang Lebih Baik
Ya, Anda mendapatkan terminal saat menginstal Ubuntu. Ini sebenarnya Konsol Windows yang terhubung ke distro Linux Anda. Ini bukan konsol yang buruk. Anda dapat mengubah ukurannya, aktifkan salin/tempel (di pengaturan). Tetapi Anda tidak dapat melakukan hal-hal seperti tab atau membuka jendela baru. Sama seperti banyak orang yang menggunakan program terminal pengganti di Mac (saya menggunakan Hyper), ada juga opsi lain untuk Windows. Daftar WSL Luar Biasa di Github berisi daftar yang cukup lengkap.
Itu semua adalah emulator yang bagus, tetapi ada opsi baru yang dibuat oleh orang-orang yang mengenal Windows dengan cukup baik.
Microsoft telah mengerjakan aplikasi baru yang disebut "Windows Terminal".
Terminal Windows dapat diinstal dari Windows Store dan saat ini dalam mode pratinjau. Saya telah menggunakannya cukup lama sekarang, dan memiliki fitur yang cukup dan cukup stabil bagi saya untuk memberikan dukungan penuh.
Terminal Windows baru menampilkan antarmuka tab lengkap, salin/tempel, banyak profil, latar belakang transparan, gambar latar — bahkan gambar latar transparan. Ini adalah hari lapangan jika Anda ingin menyesuaikan terminal Anda, dan saya datang untuk memenangkan perlombaan karung ini.
Ini terminal saya saat ini. Kami akan berjalan-jalan melalui beberapa tweak penting di sini.
Terminal Windows cukup dapat disesuaikan. Mengklik panah “ ” di kiri atas (di sebelah tanda “ + ”) memberi Anda akses ke “Pengaturan”. Ini akan membuka file JSON.
Bind Salin/Tempel
Di bagian atas file adalah semua binding kunci. Hal pertama yang saya lakukan adalah memetakan "copy" ke Ctrl + C dan paste ke Ctrl + V . Bagaimana lagi saya akan menyalin dan menempelkan perintah dari Stack Overflow yang tidak saya mengerti?
{ "command": "copy", "keys": ["ctrl+c"] }, { "command": "paste", "keys": ["ctrl+v"] },
Masalahnya adalah Ctrl + C sudah dipetakan ke SIGINT, atau perintah Interrupt/kill di Linux. Ada banyak terminal di luar sana untuk Windows yang menangani ini dengan memetakan Salin/Tempel ke Ctrl + Shift + C dan Ctrl + Shift + V masing-masing. Masalahnya adalah salin/tempel Ctrl + C / Ctrl + V setiap tempat lain di Windows. Saya terus menekan Ctrl + C di terminal berulang kali mencoba menyalin sesuatu. Saya tidak bisa berhenti melakukannya.
Terminal Windows menangani ini secara berbeda. Jika Anda memiliki teks yang disorot dan Anda menekan Ctrl + C , itu akan menyalin teks. Jika ada proses yang sedang berjalan, ia masih mengirimkan perintah SIGINT ke bawah dan menginterupsinya. Artinya Anda dapat dengan aman memetakan Ctrl + C / Ctrl + V untuk Salin/Tempel di Terminal Windows dan itu tidak akan mengganggu kemampuan Anda untuk mengganggu proses.
Siapa yang mengira Copy/Paste bisa menyebabkan begitu banyak sakit hati?
Ubah Profil Default
Profil default adalah apa yang muncul ketika tab baru dibuka. Secara default, itu Powershell. Anda akan ingin menggulir ke bawah dan menemukan profil Linux. Ini adalah yang membuka wsl.exe -d Ubuntu
. Salin GUID-nya dan tempel ke pengaturan defaultProfile
default.
Saya telah memindahkan kedua pengaturan ini sehingga mereka berada tepat di samping satu sama lain untuk membuatnya lebih mudah dilihat:
Atur Latar Belakang
Saya suka latar belakang saya menjadi warna solid gelap dengan logo datar di sudut kanan. Saya melakukan ini karena saya ingin logo menjadi cerah dan terlihat, tetapi tidak menghalangi teks. Yang ini saya buat sendiri, tetapi ada banyak koleksi gambar datar untuk dipilih di Simple Desktops.
Latar belakang diatur dengan properti backgroundImage
:
"backgroundImage": "c:/Users/YourUserName/Pictures/earth.png"
Anda juga akan melihat pengaturan yang disebut "akrilik". Inilah yang memungkinkan Anda untuk menyesuaikan opacity latar belakang. Jika Anda memiliki warna latar belakang yang solid, ini cukup mudah.
"background": "#336699", "useAcrylic": true, "acrylicOpacity": 0.5
Anda dapat melakukannya dengan gambar latar belakang juga, dengan menggabungkan pengaturan arcylicOpacity
dengan backgroundImageOpacity
:
"backgroundImage": "c:/Users/username/Pictures/earth-and-stars.png", "useAcrylic": true, "acrylicOpacity": 0.5
Untuk tema saya, transparansi membuat semuanya terlihat tidak bersuara, jadi saya tetap menggunakan useAcrylic
disetel ke false
.
Ubah Font
Tim yang membangun Terminal Windows juga sedang mengerjakan font baru yang disebut "Cascadia Code". Ini tidak tersedia pada saat penulisan ini, jadi Anda mendapatkan font Windows default sebagai gantinya.
Font default di Terminal Windows adalah "Consola". Ini adalah font yang sama yang digunakan baris perintah Windows. Jika Anda ingin merasakan Ubuntu yang sebenarnya, Chris Hoffman menunjukkan bagaimana Anda dapat menginstal font resmi Ubuntu Mono.
Ini sebelum dan sesudah sehingga Anda dapat melihat perbedaannya:
"fontFace": "Ubuntu Mono"
Mereka terlihat sangat mirip; perbedaan utama adalah pada jarak Ubuntu Mono yang membuat terminal sedikit lebih ketat dan lebih bersih.
Skema Warna
Skema warna semuanya terletak di bagian bawah file pengaturan. Saya menyalin skema warna "Campbell" sebagai garis dasar. Saya mencoba mencocokkan warna dengan nama mereka, tetapi saya juga tidak takut untuk menjadi nakal. Saya akan memetakan "#ffffff" ke "biru" — Saya bahkan tidak peduli.
Jika Anda menyukai skema khusus ini yang saya beri nama "Bumi", saya telah mengumpulkan intinya sehingga Anda tidak perlu menyalin semua kekacauan ini secara manual dari tangkapan layar.
Catatan : Pratinjau warna datang berdasarkan ekstensi "Sorotan Warna" untuk Kode VS.
Ubah Direktori Awal Default
Secara default, profil WSL memasukkan Anda ke direktori home Anda di sisi Windows. Berdasarkan pengaturan yang saya rekomendasikan dalam artikel ini, akan lebih baik untuk meletakkannya di folder home
Linux Anda. Untuk melakukannya, ubah pengaturan startingDirectory
di profil "Ubuntu" Anda:
"startingDirectory": "\\\\wsl$\\Ubuntu\\home\\burkeholland"
Perhatikan jalan di sana. Anda dapat menggunakan jalur ini (dikurangi garis miring ekstra) untuk mengakses WSL dari baris perintah Windows.
Instal Zsh/Oh-My-Zsh
Jika Anda belum pernah menggunakan Zsh dan Oh-My-Zsh sebelumnya, Anda akan benar-benar menikmatinya. Zsh (atau "Z Shell") adalah shell pengganti untuk Linux. Ini memperluas kemampuan dasar Bash, termasuk pengalihan direktori tersirat (tidak perlu mengetik cd
), dukungan bertema yang lebih baik, petunjuk yang lebih baik, dan banyak lagi.
Untuk menginstal Zsh, ambil dengan manajer paket apt, yang keluar dari kotak dengan instalasi Linux Anda:
sudo apt install zsh
Instal oh-my-zsh menggunakan curl. Oh-my-zsh adalah satu set konfigurasi untuk zsh yang meningkatkan pengalaman shell lebih jauh dengan plugin, tema, dan segudang pintasan keyboard.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
Kemudian ia akan menanyakan apakah Anda ingin mengubah shell default Anda ke Zsh. Anda melakukannya, jadi jawablah dengan setuju dan Anda sekarang aktif dan berjalan dengan Zsh dan Oh-My-Zsh.
Anda akan melihat bahwa promptnya jauh lebih bersih sekarang. Anda dapat mengubah tampilan prompt itu dengan mengubah tema di file ~/.zshrc
.
Buka dengan nano
, yang mirip dengan VIM, tetapi Anda dapat mengedit sesuatu dan keluar saat diperlukan.
nano ~/.zshrc
Ubah baris yang menetapkan tema. Ada URL di atasnya dengan seluruh daftar tema. Saya pikir yang "awan" itu bagus. Dan lucu.
Untuk mendapatkan perubahan pada .zshrc
yang diambil, Anda harus mengambilnya:
source ~/.zshrc
Catatan : Jika Anda memilih tema seperti "agnoster" yang memerlukan mesin terbang, Anda memerlukan versi Ubuntu Mono yang diinfuskan dengan powerline yang memiliki ... mesin terbang. Jika tidak, terminal Anda hanya akan penuh dengan karakter aneh seperti Anda menumbuk wajah Anda di keyboard. Nerd Fonts menawarkan satu yang tampaknya bekerja dengan cukup baik.
Sekarang Anda dapat melakukan hal-hal seperti mengubah direktori hanya dengan memasukkan nama direktori. Tidak diperlukan cd
. Ingin kembali ke direktori? Lakukan saja ..
. Anda bahkan tidak perlu mengetikkan seluruh nama direktori, cukup ketik beberapa huruf pertama dan tekan tab. Zsh akan memberi Anda daftar semua file/direktori yang cocok dengan pencarian Anda dan Anda dapat menelusurinya.
Menginstal Node
Sebagai pengembang web, Anda mungkin ingin menginstal Node.js. Saya kira Anda tidak perlu menginstal Node untuk melakukan pengembangan web, tetapi rasanya seperti itu di 2019!
Naluri pertama Anda mungkin menginstal node dengan apt
, yang dapat Anda lakukan, tetapi Anda akan menyesalinya karena dua alasan:
- Versi Node di apt sangat ketinggalan zaman;
- Anda harus menginstal Node dengan manajer versi sehingga Anda tidak mengalami masalah izin.
Cara terbaik untuk mengatasi kedua masalah ini adalah dengan menginstal nvm (Node Version Manager). Karena Anda telah menginstal zsh
, Anda cukup menambahkan plugin nvm di file zshrc Anda dan zsh akan menangani sisanya.
Pertama, instal plugin dengan mengkloning di repo zsh-nvm
. (Jangan khawatir, Git menjadi standar pada instalasi Ubuntu Anda.)
git clone https://github.com/lukechilds/zsh-nvm ~/.oh-my-zsh/custom/plugins/zsh-nvm
Kemudian tambahkan sebagai plugin di file ~/.zshrc
.
`nano ~/.zshrc` plugins (zsh-nvm git)
Ingatlah untuk mencari sumber file zshrc lagi dengan source ~/.zshrc
dan Anda akan melihat nvm sedang diinstal.
Sekarang Anda dapat menginstal node dengan nvm. Itu membuatnya mudah untuk menginstal beberapa versi node berdampingan, dan beralih di antara mereka dengan mudah. Juga, tidak ada kesalahan izin saat Anda melakukan pemasangan npm global!
nvm install --lts
Saya merekomendasikan ini di atas instalasi nvm standar karena plugin memberi Anda kemampuan untuk memutakhirkan nvm dengan mudah. Ini agak menyusahkan dengan pemasangan "ikal" standar. Itu satu perintah dengan plugin.
nvm upgrade
Gunakan Saran Otomatis
Salah satu plugin favorit saya untuk zsh adalah zsh-autosugesti. Itu mengingat hal-hal yang telah Anda ketik di terminal sebelumnya, dan kemudian mengenalinya ketika Anda mulai mengetiknya lagi serta "menyarankan otomatis" baris yang mungkin Anda butuhkan. Plugin ini telah berguna lebih dari yang saya ingat — khususnya ketika datang ke perintah CLI panjang yang telah saya gunakan di masa lalu, tetapi tidak pernah dapat mengingatnya.
Kloning repo ke dalam folder ekstensi zsh:
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
Kemudian tambahkan ke plugin zsh Anda dan sumber file zshrc:
nano ~/.zshrc # In the .zshrc file plugins(zsh-nvm zsh-autosuggestions git) source ~/.zshrc
Plugin membaca riwayat zsh Anda, jadi mulailah mengetik beberapa perintah yang telah Anda ketik sebelumnya dan saksikan keajaibannya. Coba ketikkan bagian pertama dari perintah klon panjang di atas.
Jika Anda menekan , itu akan otomatis melengkapi perintah. Jika Anda terus menekan , itu akan menggilir salah satu perintah dalam riwayat Anda yang mungkin cocok.
Pintasan Keyboard Penting
Ada beberapa pintasan terminal yang saya gunakan sepanjang waktu. Saya menemukan ini dengan semua alat saya — termasuk VS Code. Mencoba mempelajari semua pintasan adalah buang-buang waktu karena Anda tidak akan cukup menggunakannya untuk mengingatnya.
Berikut adalah beberapa yang saya gunakan secara teratur:
Pintasan Terminal | Apa fungsinya? |
---|---|
Ctrl + L | Ini membersihkan terminal dan menempatkan Anda kembali ke atas. Ini setara dengan mengetik "jelas". |
Ctrl + U | Ini menghapus baris saat ini saja. |
Ctrl + A | Mengirim kursor ke awal baris perintah. |
Ctrl + E | Pindah ke akhir baris. |
Ctrl + K | Hapus semua karakter setelah kursor. |
Itu dia! Segala sesuatu yang lain mungkin telah saya pelajari dan kemudian saya lupakan karena tidak pernah ada gunanya.
Konfigurasi Git(Hub/Lab/Whatevs)
Git hadir di Ubuntu, jadi tidak perlu menginstal. Anda dapat mengikuti instruksi di hoster kontrol sumber pilihan Anda untuk membuat kunci ssh Anda dibuat dan berfungsi.
Perhatikan bahwa dalam instruksi Github, ini memberitahu Anda untuk menggunakan utilitas "salin" untuk menyalin kunci ssh Anda. Ubuntu memiliki perintah "xcopy", tetapi tidak akan berfungsi di sini karena tidak ada interop antara Linux dan Windows dalam hal clipboard.
Sebagai gantinya, Anda cukup menggunakan Windows Clipboard yang dapat dieksekusi dan memanggilnya langsung dari terminal. Anda perlu mendapatkan teks terlebih dahulu dengan cat
, dan kemudian menyalurkannya ke clipboard Windows.
cat ~/.ssh/id_rsa.pub | clip.exe
Dokumen Github memberi tahu Anda untuk memastikan bahwa ssh-agent
berjalan. Ini bukan. Anda akan melihat ini ketika Anda mencoba dan menambahkan kunci Anda ke agen:
Anda dapat memulai agen, tetapi saat berikutnya Anda me-reboot Windows atau WSL dihentikan, Anda harus memulainya lagi. Ini karena tidak ada sistem inisialisasi di WSL. Tidak ada systemd
atau proses lain yang memulai semua layanan Anda saat WSL dimulai. WSL masih dalam pratinjau, dan tim sedang mengerjakan solusi untuk ini.
Sementara itu, percaya atau tidak, ada plugin zsh untuk ini juga. Itu disebut ssh-agent
, dan itu diinstal dengan oh-my-zsh, jadi yang perlu Anda lakukan hanyalah merujuknya ke file .zshrc
.
zsh-nvm zsh-autosuggestions ssh-agent git
Ini akan memulai ssh-agent secara otomatis jika tidak berjalan saat pertama kali Anda menjalankan WSL. Kelemahannya adalah ia akan menanyakan frasa sandi Anda setiap kali WSL dimulai baru. Itu berarti pada dasarnya kapan saja Anda me-reboot komputer Anda.
Kode VS Dan WSL
WSL tidak memiliki GUI, jadi Anda tidak dapat menginstal alat visual seperti VS Code. Itu perlu diinstal di sisi Windows. Ini menimbulkan masalah karena Anda memiliki program yang berjalan di sisi Windows yang mengakses file di sisi Linux, dan ini dapat mengakibatkan semua manor of quirks dan masalah "izin ditolak". Sebagai aturan umum, Microsoft menyarankan Anda untuk tidak mengubah file di sisi WSL dengan program Windows.
Untuk mengatasi ini, ada ekstensi untuk VS Code yang disebut "Remote WSL". Ekstensi ini dibuat oleh Microsoft, dan memungkinkan Anda untuk mengembangkan di dalam WSL, tetapi dari dalam VS Code.
Setelah ekstensi diinstal, Anda dapat melampirkan Kode VS langsung ke sisi Ubuntu dengan membuka Palet Perintah (
Ini membuka contoh baru VS Code yang memungkinkan Anda bekerja seolah-olah Anda sepenuhnya berada di sisi Linux. Melakukan "File/Open" menelusuri sistem file Ubuntu alih-alih yang Windows.
Terminal terintegrasi dalam Kode VS membuka pengaturan zsh Anda yang disesuaikan dengan indah. Semuanya "berfungsi" seperti seharusnya ketika Anda menginstal ekstensi WSL Jarak Jauh.
Jika Anda membuka kode dari terminal Anda dengan code .
, VS Code akan secara otomatis mendeteksi bahwa itu dibuka dari WSL, dan akan otomatis melampirkan ekstensi WSL Jarak Jauh.
Ekstensi Kode VS Dengan WSL Jarak Jauh
Ekstensi WSL Jarak Jauh untuk VS Code bekerja dengan menyiapkan server kecil di sisi Linux, dan kemudian menghubungkannya dari VS Code di sisi Windows. Karena itu, ekstensi yang Anda instal di VS Code tidak akan muncul secara otomatis saat Anda membuka proyek dari WSL.
Misalnya, saya memiliki proyek Vue yang terbuka di VS Code. Meskipun saya telah menginstal semua ekstensi Vue yang tepat untuk penyorotan sintaks, pemformatan, dan sejenisnya, Kode VS bertindak seperti belum pernah melihat file .vue
sebelumnya.
Semua ekstensi yang telah Anda instal dapat diaktifkan di WSL. Temukan saja ekstensi yang Anda inginkan di WSL, dan klik tombol "Instal di WSL".
Semua ekstensi yang dipasang di WSL akan muncul di bagiannya masing-masing di tampilan Extensions Explorer. Jika Anda memiliki banyak ekstensi, mungkin sedikit mengganggu untuk menginstal masing-masing ekstensi satu per satu. Jika Anda hanya ingin menginstal setiap ekstensi yang Anda miliki di WSL, klik ikon unduhan awan kecil di bagian atas bagian 'Lokal - Terpasang'.
Cara Mengatur Direktori Dev Anda
Ini sudah merupakan artikel opini, jadi inilah artikel yang tidak Anda tanyakan tentang bagaimana menurut saya Anda harus menyusun proyek Anda di sistem file Anda.
Saya menyimpan semua proyek saya di sisi Linux. Saya tidak meletakkan proyek saya di "Dokumen Saya" dan kemudian mencoba dan bekerja dengan mereka dari WSL. Otakku tidak bisa menangani itu.
Saya membuat folder bernama /dev
yang saya taruh di root folder /home
saya di Linux. Di dalam folder itu, saya membuat folder lain dengan nama yang sama dengan repo Github saya: /burkeholland
. Folder itu adalah tempat semua proyek saya pergi — bahkan yang tidak didorong ke Github.
Jika saya mengkloning repo dari akun Github yang berbeda (misalnya "microsoft"), saya akan membuat folder baru di "dev" bernama /microsoft
. Saya kemudian mengkloning repo ke dalam folder di dalamnya.
Pada dasarnya, saya meniru struktur yang sama dengan kontrol sumber di mesin lokal saya. Saya merasa jauh lebih mudah untuk bernalar tentang di mana proyek berada dan repositori apa yang dilampirkan hanya berdasarkan lokasinya. Ini sederhana, tetapi sangat efektif untuk membantu saya mengatur semuanya. Dan saya membutuhkan semua bantuan yang bisa saya dapatkan.
Menjelajahi File Dari Windows Explorer
Ada kalanya Anda perlu mendapatkan file di Linux dari sisi Windows. Hal yang indah tentang WSL adalah Anda masih bisa melakukannya.
Salah satu caranya adalah dengan mengakses WSL seperti drive yang dipetakan. Akses dengan \\wsl$
langsung dari bilah penjelajah:
\\wsl$
Anda mungkin melakukan ini karena sejumlah alasan berbeda. Misalnya, hari ini saya membutuhkan ekstensi Chrome yang tidak ada di toko web. Jadi saya mengkloning repo di WSL, lalu menavigasi ke sana sebagai "Unpacked Extension" dan memuatnya ke Edge.
Satu hal yang saya lakukan dengan frekuensi tertentu di Linux adalah membuka direktori yang berisi file langsung dari terminal. Anda juga dapat melakukan ini di WSL, dengan langsung memanggil explorer.exe
. Misalnya, perintah ini membuka direktori saat ini di Windows Explorer.
$ explorer.exe .
Perintah ini agak rumit sekalipun. Di Linux, itu hanya open .
. Kita bisa membuat keajaiban yang sama dengan membuat alias di ~/.zshrc
.
alias open="explorer.exe"
Buruh pelabuhan
Ketika saya mengatakan semua perkakas harus berada di sisi Linux, maksud saya itu. Itu termasuk Docker.
Di sinilah karet benar-benar mulai memenuhi jalan. Yang kita butuhkan di sini adalah Docker, yang berjalan di dalam Linux yang berjalan di dalam Windows. Ini sedikit seperti Boneka Bersarang Rusia ketika Anda menuliskannya di posting blog. Pada kenyataannya, itu cukup mudah.
Anda memerlukan versi Docker untuk Windows yang benar. Pada saat penulisan ini, itulah Pratinjau Teknologi WSL 2.
Saat Anda menjalankan penginstal, ia akan menanyakan apakah Anda ingin menggunakan wadah Windows alih-alih wadah Linux. Anda pasti melakukannya. Jika tidak, Anda tidak akan mendapatkan opsi untuk menjalankan Docker di WSL.
Anda sekarang dapat mengaktifkan Docker di WSL dengan mengklik item di baki sistem dan memilih "WSL 2 Tech Preview":
Setelah Anda memulai layanan, Anda dapat menggunakan Docker di dalam WSL seperti yang Anda harapkan. Menjalankan Docker di WSL memberikan peningkatan kinerja yang cukup besar, serta peningkatan waktu mulai dingin pada container.
Mungkinkah saya juga menyarankan Anda menginstal ekstensi Docker untuk VS Code? Ini menempatkan antarmuka visual pada pengaturan Docker Anda dan umumnya hanya membuatnya lebih mudah untuk bekerja dengan Docker karena Anda tidak harus mengingat semua flag dan opsi baris perintah tersebut.
Dapatkan Lebih Banyak Bash Di Windows
Pada titik ini, Anda harus mendapatkan ide tentang cara memasang Bash di Windows, dan cara kerjanya setelah Anda mendapatkannya di sana. Anda dapat menyesuaikan terminal Anda tanpa henti dan ada berbagai macam program rad yang dapat Anda tambahkan untuk melakukan hal-hal seperti mengatur variabel PATH secara otomatis, membuat alias, mendapatkan sapi ASCII di terminal Anda, dan banyak lagi.
Menjalankan Bash di Windows membuka alam semesta yang sama sekali baru bagi saya. Saya dapat menggabungkan Windows yang saya sukai untuk sisi produktivitas, dan Linux yang saya andalkan sebagai pengembang. Yang terbaik, saya bisa membuat aplikasi untuk kedua platform sekarang dengan satu mesin.
Bacaan lebih lanjut
Anda dapat membaca lebih lanjut tentang Bash di Windows di sini:
- “Subsistem Windows Untuk Panduan Instalasi Linux Untuk Windows 10,” Microsoft Docs
- “Cara Memasang Dan Menggunakan Bash Shell Di Windows 10,” Chris Hoffman, How-To Geek
- “Berbagi SSH Dengan WSL,” Drew Wilson
- “Menjadi Gila Dengan Subsistem Jendela Untuk Linux,” Brian Ketelsen
- “Semua yang Dapat Anda Lakukan Dengan Bash Shell Baru Windows 10,” Chris Hoffman, How-To Geek
Terima kasih khusus kepada Brian Ketelsen, Matt Hernandez, Rich Turner, dan Craig Loewen atas kesabaran, bantuan, dan bimbingan mereka dengan artikel ini.