Saya baru-baru ini beralih dari Bash ke Zsh di Ubuntu dan saya cukup senang tentang itu. Namun, ada sesuatu yang sangat saya rindukan dan saya tidak menemukan cara untuk mencapai hal yang sama.
Di Bash, setiap kali saya mengetik perintah yang panjang dan menyadari bahwa saya harus menjalankan sesuatu yang lain sebelumnya, saya hanya perlu mengomentarinya seperti berikut:
me@home> #mysuperlongcommand with some arguments
me@home> thecommandIhavetorunfirst #and then: then up up
me@home> #mysuperlongcommand with some arguments #I just need to uncomment it!
Namun, situasi cukup berulang ini tidak semudah ke alamat seperti zsh
, mengingat #mysuperlongcommand
akan dijalankan seperti itu (dan mengakibatkan: zsh: command not found: #mysuperlongcommand
.
command-line
zsh
Rolf
sumber
sumber
set -k
jika hanya satu kali. Tapi saya akan menggunakansetopt
baris dari jawaban ini di zshrc sayasaya menggunakan
Dari manual zsh:
Jadi terlihat seperti ini:
Selain itu, jika Anda menyetel
INTERACTIVE_COMMENTS
opsi (setopt INTERACTIVE_COMMENTS
), Anda akan dapat menggunakan komentar di shell interaktif seperti yang biasa Anda lakukan.sumber
read -z
danprint -z
, jadi dengan beberapa skrip dan file sementara Anda bisa. Tapi kemudian widget zle kustom untuk menyimpan baris perintah ke file temp mungkin lebih sederhana, dan riwayat bersama akan lebih sederhana.Saya menemukan diri saya sering melakukan ini juga. Apa yang saya lakukan adalah memotong perintah panjang, menjalankan perintah yang harus dilakukan terlebih dahulu dan kemudian menempelkan kembali perintah panjang. Ini mudah: CTRL + U memotong perintah saat ini ke buffer, CTRL + Y menempelkannya. Bekerja di zsh dan bash.
sumber
Selain itu
setopt interactivecomments
, disarankan oleh @Lajnold, Anda mungkin juga ingin menambahkan sesuatu seperti berikut untuk mencegah komentar tertentu ditulis ke riwayat (dari /superuser/352788/how-to-prevent-a- command-in-the-zshell-from-being-stored-into-history ):Ini menggantikan fungsi built-in ZSH zshaddhistory ():
Sebagai referensi, ini adalah zshaddhistory () http://zsh.sourceforge.net/Doc/Release/Functions.html default
sumber