Rumah >Peranti teknologi >industri IT >75 arahan ZSH, plugin, alias dan alat
Saya bekerja sebahagian besar masa saya setiap hari di terminal, dan shell yang saya pilih adalah ZSH - shell Unix yang sangat disesuaikan dengan banyak ciri yang kuat. Sebagai pemaju malas ™, saya telah mencari cara untuk mengurangkan jumlah input dan mengautomasikan semua tugas. Nasib baik, ZSH dilahirkan untuk ini.
Dalam artikel ini, saya akan berkongsi 75 arahan, plugin, alias dan alat, dengan harapan dapat membantu anda menyimpan beberapa tekanan utama dan meningkatkan kecekapan kerja harian anda.
Jika anda belum memasang ZSH pada mesin anda, lihat artikel ini dan saya akan menunjukkan kepada anda bagaimana untuk memulakan dengan cepat.
mata utama
Saham ZSH Banyak ciri mudah dengan Bash. Ciri -ciri berikut tidak unik untuk ZSH, tetapi masih bernilai mengetahui. Saya menggalakkan anda untuk mula menggunakan baris arahan untuk melakukan tindakan yang disenaraikan di bawah. Pada mulanya ia mungkin kelihatan seperti ia lebih susah payah daripada menggunakan GUI, tetapi apabila anda mendapat silap mata, anda tidak akan menyesal.
cd
dari mana saja di sistem fail akan membawa anda kembali ke direktori rumah anda secara langsung. !!
akan memanggil arahan terakhir. Ini akan menjadi sangat mudah jika arahan gagal kerana keistimewaan pentadbir diperlukan. Dalam kes ini, anda boleh memasukkan sudo !!
. &&
untuk menghubungkan pelbagai arahan. Sebagai contoh, mkdir project && cd project && npm init -y
||
git commit -m "whatever..." || echo "Commit failed"
Menggunakan suis mkdir
-p
Tetapkan pembolehubah persekitaran berdasarkan setiap arahan, contohnya: mkdir -p articles/jim/sitepoint/article{1,2,3}
. Atau, tetapkan pada asas per-sesi: NODE_DEBUG=myapp node index.js
export NODE_DEBUG=myapp
Pindahkan output satu arahan ke arahan kedua. Sebagai contoh, echo $variable-name
membuat log panjang mudah dibaca, atau cat /var/log/kern.log | less
Anda boleh membuka fail dari terminal dalam editor anda. Sebagai contoh, history | grep ssh
(teks luhur), nano ~/.zshrc
navigasi adalah kemahiran penting. Jangan bergantung pada kekunci anak panah anda. Sebagai contoh, subl ~/.zshrc
akan membawa anda ke permulaan garis. code ~/.zshrc
<kbd>Ctrl</kbd> <kbd>a</kbd>
<kbd>Ctrl</kbd> <kbd>e</kbd>
<kbd>Ctrl</kbd> <kbd>w</kbd>
<kbd>Ctrl</kbd> <kbd>u</kbd>
. <kbd>Ctrl</kbd> <kbd>k</kbd>
untuk menyalin teks. Ini jauh lebih elegan daripada klik kanan dan memilih salinan. <kbd>Ctrl</kbd> <kbd>y</kbd>
<kbd>Ctrl</kbd> <kbd>Shift</kbd> <kbd>c</kbd>
<kbd>Ctrl</kbd> <kbd>shift</kbd> <kbd>v</kbd>
alias adalah pintasan terminal untuk arahan biasa. Anda boleh menambahkannya ke fail
anda dan memuatkan semula terminal anda (menggunakan) untuk membuatnya berkuatkuasa.
Sintaks untuk mengisytiharkan (mudah) alias adalah seperti berikut: ~/.zshrc
<code>alias [alias-name]='[command]'</code>
alias sangat sesuai untuk arahan biasa, arahan panjang, atau perintah yang sukar diingat dalam sintaks. Berikut adalah beberapa alias yang sering saya gunakan:
A myip
. alias myip='curl http://ipecho.net/plain; echo'
distro
. alias distro='cat /etc/*-release'
reload
. alias reload='source ~/.zshrc'
. Ini akan memulihkan kesan berjalan undo-git-reset
. alias undo-git-reset-head="git reset 'HEAD@{1}'"
git reset HEAD~
alias sapu='sudo apt-get update'
alias ffs='sudo !!'
: y
. Ini bermakna saya boleh mengklon repositori dan kemudian taipkan yarn
untuk memperkenalkan semua kebergantungan. Saya belajar ini dari Scott Tolinski pada sintaks. alias y='yarn'
<kbd>y</kbd>
, dan kemudian memasang semula kebergantungan projek: node_modules
. Seperti yang anda ketahui, Yolo bermaksud package-lock.json
y alias yolo='rm -rf node_modules/ && rm package-lock.json && yarn install'
ou o nly l ive o nce.
. .zshrc
alias zshconfig='subl $HOME/.zshrc'
alias update-available-rubies='cd ~/.rbenv/plugins/ruby-build && git pull'
alias server='python -m SimpleHTTPServer 8000'
alias npmhelp='firefox https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/npm'
. alias -g L='| less'
cat production.log L
. alias -g G='| grep'
history G ssh
<code>alias [alias-name]='[command]'</code>
Terdapat banyak tempat untuk mencari lebih banyak idea mengenai alias dalam talian. Sebagai contoh, perbincangan berita penggodam ini, atau artikel ini mengenai penggunaan ZSH untuk meningkatkan produktiviti baris arahan.
15 perkara sejuk yang boleh anda lakukan dengan (oh saya) zsh
Oh My ZSH adalah rangka kerja yang didorong oleh komuniti untuk menguruskan konfigurasi ZSH anda dan dibundel dengan beribu-ribu fungsi berguna, pembantu, plugin, dan tema. Jika anda akan menggunakan Z Shell sebagai pemacu harian anda, anda harus benar -benar pasang oh zsh saya.
Berikut adalah lima belas perkara berguna oh saya boleh lakukan untuk anda:
take
akan membuat direktori baru dan masukkan direktori. take my-project
Ganti mkdir my-project && cd my-project
. zsh_stats
akan memberikan anda senarai 20 perintah pertama dan bilangan larian mereka. ..
adalah alias untuk cd ...
. ...
menggerakkan anda ke atas dua direktori, ....
bergerak tiga ke atas, dan .....
bergerak empat ke atas. cd
apabila menavigasi. Sebagai contoh, memasukkan /
akan membawa anda terus ke direktori root sistem fail anda. /h/j/De
dan tekan <kbd>TAB</kbd>
dan kemudian <kbd>Return</kbd>
akan membawa saya ke /home/jim/Desktop/
. rd
adalah alias untuk rmdir
dan md
adalah alias untuk mkdir -p
. d
untuk menyenaraikan direktori terakhir yang digunakan dalam sesi terminal. cd -n
untuk menavigasi ke mana -mana direktori ini, di mana n ialah nombor direktori. ls -
dan menekan <kbd>TAB</kbd>
akan menyenaraikan semua pilihan arahan, serta penerangan berguna mengenai fungsi mereka. Ini juga terpakai untuk cap
, rake
, ssh
dan kill
. alias
semua alias semasa anda akan disenaraikan. ls *.html
akan menyenaraikan semua fail HTML dalam direktori semasa. Untuk memasukkan subdirektori, tukar kepada: ls **/*.html
. ls -l **/*(.x)
akan menemui semua executable dalam direktori semasa dan semua subdirektori. ls *(m-7)
akan menyenaraikan semua fail yang diubah suai pada minggu lalu. ls *(Lm 1)
akan mencari semua fail dengan saiz yang lebih besar daripada 1MB. Dapatkan keseronokan dan faedah dengan pemalam
oh zsh saya dilengkapi dengan sebilangan besar plugin . Anda harus melayari plugin ini dan melabur sedikit masa mempelajari mereka yang dapat membantu aliran kerja anda.
Berikut adalah tiga plugin yang sering saya gunakan yang menyediakan banyak jalan pintas dan alias yang berguna.
10 alias git yang indah
Plugin Git menyediakan banyak alias dan beberapa fungsi berguna. Mengapa tidak melayari ini dan cuba ingat sepuluh yang anda gunakan paling kerap? Berikut adalah yang paling saya gunakan.
g
adalah alias yang mudah untuk git
. Ini bermakna anda boleh menaip sesuatu seperti g clone <whatever></whatever>
bukan git clone <whatever></whatever>
. Mungkin hanya dua kunci, tetapi mereka akan berkumpul tidak lama lagi. gaa
. Saya telah menggunakan ini sepanjang masa. git add all
gb
yang akan menyenaraikan semua cawangan dalam repositori semasa dan menunjukkan cawangan mana yang sedang anda lakukan. git branch
gcb
, yang membolehkan anda membuat cawangan baru. git checkout -b
gcm
. Ini mengembalikan anda ke cawangan utama. git checkout master
gdca
. Ini membolehkan anda membuat perbandingan perbezaan mana -mana fail yang telah dipentaskan untuk penyerahan. git diff --cached
gf
. git fetch
gm
. git merge
gp
. Untuk menyegerakkan cawangan repositori, anda boleh lakukan: git push
, gf upstream
, dan kemudian gm upstream/master
. gp
glog
, yang akan memberi anda graf cawangan git yang indah. git log --oneline --decorate --graph
Plugin
npm menyediakan penyelesaian dan banyak alias berguna.npmg
adalah alias untuk npm install --global
yang boleh anda gunakan untuk memasang kebergantungan secara global pada sistem anda. Sebagai contoh, npmg nodemon
npmS
yang boleh anda gunakan untuk memasang kebergantungan dan tambahkannya ke bahagian npm install --save
anda package.json
. Perhatikan bahawa bermula dengan NPM 5.0.0, ini adalah lalai apabila menjalankan dependencies
. npm i <package></package>
npmD
yang boleh anda gunakan untuk memasang kebergantungan dan tambahkannya ke bahagian npm install --save-dev
anda package.json
. devDependencies
npmO
yang akan memeriksa pendaftaran untuk melihat sama ada pakej yang dipasang (atau spesifik) kini telah tamat tempoh. npm outdated
npmL
yang akan menyenaraikan pakej yang dipasang. npm list
npmL0
yang menyenaraikan pakej peringkat atas. Ini amat berguna untuk melihat modul yang dipasang di seluruh dunia tanpa membanjiri terminal anda dengan pokok ketergantungan yang besar: npm list --depth=0
. npmL0 -g
npmst
, skrip NPM yang biasa digunakan untuk memulakan aplikasi. npm run start
npmt
, dan seperti yang anda boleh meneka, ia digunakan untuk menjalankan ujian anda. npm run test
npmR
. Ia sendiri akan menyenaraikan semua skrip NPM yang tersedia untuk projek itu, serta perihalan fungsi mereka. Apabila digunakan dengan nama skrip, ia akan menjalankan skrip, sebagai contoh, npm run
. npmR build
npmI
. Ini akan menanyakan beberapa soalan kepada anda dan kemudian membuat npm init
berdasarkan jawapan anda. Gunakan bendera package.json
untuk mengautomasikan proses ini. Sebagai contoh, -y
npmI -y
Plugin ini menambah penyempurnaan rangka kerja Ruby on Rails dan program rake, serta beberapa alias untuk pembolehubah log dan persekitaran.
rc
adalah alias untuk rails console
yang membolehkan anda berinteraksi dengan aplikasi Rails anda dari CLI. rdc
adalah alias untuk rake db:create
, yang (kecuali RAILS_ENV
ditetapkan) akan membuat pangkalan data pembangunan dan ujian untuk permohonan anda. rdd
adalah alias untuk rake db:drop
yang akan memadam pangkalan data pembangunan dan ujian aplikasi anda. rdm
adalah alias untuk rake db:migrate
yang akan menjalankan sebarang migrasi pangkalan data yang belum selesai. rds
adalah alias untuk rake db:seed
yang menjalankan fail db/seeds.rb
untuk mengisi pangkalan data pembangunan anda dengan data. rgen
adalah alias untuk rails generate
yang akan menghasilkan kod boilerplate. Contohnya: rgen scaffold item name:string description:text
rgm
yang akan menghasilkan penghijrahan pangkalan data. Contohnya: rails generate migration
rgm add_description_to_products description:string
rr
rake routes
rrg
rake routes | grep
rrg user
adalah alias untuk rs
rails server
Sumber lain Berikut adalah empat kegemaran saya:
membolehkan anda dengan mudah awalan perintah semasa atau sebelumnya dengan menekan
sudo
<kbd>ESC</kbd>
Cadangkan arahan semasa anda menaip berdasarkan sejarah dan kandungan lengkap. Jika cadangan itu adalah arahan yang anda cari, tekan kekunci sudo
untuk menerimanya. Alat penjimatan masa sebenar! autosuggestions
: Jika arahan tidak diiktiraf dalam <kbd>→</kbd>
, ia akan menggunakan pakej Ubuntu command-not-found
$PATH
adalah plugin berguna yang membina senarai folder yang paling biasa digunakan dan baru -baru ini (ia dipanggil "crecent") dan membolehkan anda melompat kepada mereka dengan arahan. command-not-found
z
Kesimpulan
Ia seperti ini: 75 perintah ZSH, plugin, alias, dan alat. Saya harap anda telah belajar satu atau dua helah semasa proses pembelajaran dan saya menggalakkan anda meninggalkan GUI anda dan pergi ke terminal. Ia lebih mudah daripada yang kelihatan dan merupakan cara yang baik untuk meningkatkan produktiviti.
Jika saya terlepas plugin kegemaran anda atau alias/perintah yang menjimatkan masa, sila beritahu saya di Twitter.
Ingin mendapatkan lebih banyak dari toolkit anda? Semak Kod Visual Studio Wiley: Alat Penyuntingan dan Debug End-to-End untuk Pemaju Web.
Soalan Lazim Mengenai Perintah ZSH, Plugin, Alias, dan Alat
ZSH, juga dikenali sebagai Z Shell, adalah shell yang kuat yang mengandungi ciri -ciri dari cengkerang lain seperti Bash, TCSH, dan KSH. Ia menawarkan beberapa kelebihan ke atas cengkerang ini. Pertama sekali, ZSH mempunyai ciri -ciri autocomplete yang kuat yang boleh mencadangkan arahan, nama fail, pilihan, dan juga nama tuan rumah. Ciri ini dapat mempercepatkan aliran kerja anda dengan ketara. Kedua, ZSH menyokong sejarah arahan perkongsian, yang membolehkan anda melihat arahan yang ditaip dalam sesi terminal yang lain. Ketiga, ZSH membolehkan anda menggunakan mod pengeditan EMACS dan VI pada masa yang sama, yang menjadikannya lebih fleksibel untuk pengguna yang berbeza. Akhirnya, ZSH mempunyai bahasa skrip yang kuat dengan ciri -ciri seperti array bersekutu dan operasi titik terapung yang tidak tersedia di Bash.
ZSH membolehkan anda menyesuaikan prompt anda menggunakan pembolehubah PROMPT
. Anda boleh menetapkan pembolehubah ini dalam fail .zshrc
anda. Sebagai contoh, jika anda ingin memaparkan direktori semasa dalam proses anda, anda boleh menggunakan parameter %~
. Oleh itu, pembolehubah PROMPT
anda akan kelihatan seperti ini: PROMPT='%~%# '
. Anda juga boleh menambah warna pada arahan anda menggunakan parameter %F{color}
. Sebagai contoh, untuk membuat hijau segera, anda boleh menggunakan: PROMPT='%F{green}%~%# %f'
. %f
Tetapkan semula warna ke warna lalai.
alias di ZSH boleh membantu anda menjimatkan masa dengan membolehkan anda membuat pintasan untuk arahan yang panjang atau biasa. Anda boleh membuat alias dengan menggunakan arahan alias
diikuti oleh alias dan arahan yang anda mahu cepat. Sebagai contoh, untuk membuat alias untuk arahan ls -l
, anda boleh menggunakan: alias ll='ls -l'
. Anda boleh menambah baris ini ke fail .zshrc
anda untuk membuat alias secara kekal berkesan.
Plugin ZSH adalah skrip yang menambah ciri tambahan ke shell ZSH anda. Mereka boleh membantu anda mengautomasikan tugas, menambah ciri baru, atau menyesuaikan shell anda. Untuk menggunakan plugin ZSH, anda perlu memasangnya terlebih dahulu. Ini biasanya melibatkan pengklonan repositori plugin ke dalam direktori .oh-my-zsh/plugins
anda dan kemudian menambah plugin ke array .zshrc
dalam fail plugins
anda. Sebaik sahaja plugin dipasang, anda boleh mula menggunakan ciri -cirinya.
Beralih dari bash ke ZSH adalah proses yang mudah. Pertama, anda perlu memasang ZSH menggunakan pengurus pakej anda. Sebagai contoh, di Ubuntu, anda boleh menggunakan: sudo apt install zsh
. Selepas memasang ZSH, anda boleh menetapkannya sebagai shell lalai anda menggunakan perintah chsh
: chsh -s $(which zsh)
. Kali berikutnya anda membuka terminal, ia akan menggunakan ZSH.
Tema ZSH membolehkan anda menyesuaikan penampilan shell. Anda boleh menukar skema warna, susun atur segera, dan juga menambah unsur -unsur seperti masa semasa atau status Git. Untuk menggunakan tema ZSH, anda perlu memasangnya terlebih dahulu. Ini biasanya melibatkan pengklonan repositori topik ke dalam direktori .oh-my-zsh/themes
anda dan menetapkan pembolehubah .zshrc
dalam fail ZSH_THEME
anda kepada nama topik. Selepas memasang tema, anda boleh mengaktifkannya dengan mendapatkan fail .zshrc
anda: source ~/.zshrc
.
Oh My ZSH adalah rangka kerja yang didorong oleh komuniti untuk menguruskan konfigurasi ZSH anda. Ia dilengkapi dengan banyak fungsi, plugin, dan tema yang berguna. Untuk menggunakan oh zsh saya, anda perlu memasangnya terlebih dahulu. Ini biasanya melibatkan memuat turun skrip pemasangan dan menjalankannya di terminal anda. Selepas memasang oh zsh saya, anda boleh mula menyesuaikan shell anda dengan mengedit fail .zshrc
anda.
membolehkan anda mengumpulkan perintah bersama dan melaksanakannya sebagai satu arahan. Anda boleh menentukan fungsi menggunakan kata kunci function
diikuti dengan nama fungsi dan blok arahan. Sebagai contoh, untuk membuat fungsi yang mencetak "Hello, World!", Anda boleh menggunakan: function hello { echo "Hello, world!"; }
. Anda boleh memanggil fungsi ini dengan menaip nama fungsi: hello
.
ZSH menyokong susunan yang diindeks dan array bersekutu. Anda boleh menggunakan perintah set
diikuti dengan nama dan elemen array untuk membuat array indeks. Sebagai contoh, untuk membuat array warna, anda boleh menggunakan: set -A colors red green blue
. Anda boleh mengakses unsur -unsur array menggunakan indeksnya: echo $colors[1]
. Untuk membuat array bersekutu, anda boleh menggunakan perintah typeset
: typeset -A colors; colors[red]=#FF0000; colors[green]=#00FF00; colors[blue]=#0000FF;
.
ZSH menyokong beberapa jenis gelung, termasuk untuk, sementara, dan sehingga gelung. Loop untuk membolehkan anda melaksanakan blok arahan berulang kali untuk setiap elemen dalam senarai. Sebagai contoh, untuk mencetak nombor dari 1 hingga 5, anda boleh menggunakan: for i in {1..5}; do echo $i; done
. Gelung sementara membolehkan anda mengulangi blok arahan apabila keadaan itu benar. Sebagai contoh, untuk mencetak nombor dari 1 hingga 5, anda boleh menggunakan: i=1; while (( i < 6 )); do echo $i; i=$((i 1)); done
. Sehingga gelung membolehkan anda mengulangi blok arahan apabila keadaan itu palsu. Sebagai contoh, untuk mencetak nombor dari 1 hingga 5, anda boleh menggunakan: i=1; until (( i > 5 )); do echo $i; i=$((i 1)); done
.
Atas ialah kandungan terperinci 75 arahan ZSH, plugin, alias dan alat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!