Saya lakukan Ctrl+W
di terminal mac untuk menghapus kata (menghapus dari mana kursor berada di awal kata)
Bagaimana saya melakukan yang sebaliknya - menghapus dari tempat kursor ke akhir kata?
Ini tergantung pada shell Anda dan mode pengeditan baris perintah yang aktif.
Untuk shell dengan mode pengeditan baris perintah Emacs ( set -o emacs
di beberapa shell), gunakan Alt+D(ini tidak berfungsi pada macOS untuk alasan apa pun, tetapi mencetak karakter ∂
, gunakan Escdsebagai gantinya).
Untuk shell dengan mode pengeditan baris perintah Vi ( set -o vi
dalam beberapa shell), gunakan Escdw(ini juga berfungsi pada macOS).
bash
dalamvi
modus, Anda dapat menggunakandW
untuk menghapus merekaUntuk disiplin garis tty,
^W
hapus kata yang dibatasi spasi putih sebelumnya .Dalam
vi
editor dalam mode sisipkan,^W
hapus mundur ke awal urutan pertama alnum atau non-alnum (aktiffoo-+-bar.. baz
, itu pertama menghapusbaz
, lalu..
, lalubar
, lalu-+-
, kemudianfoo
).Di
emacs
editor,^W
hapus dari posisi kursor ke tanda (yang Anda set dengan Ctrl+Space).Beberapa editor baris seperti
readline
(digunakan olehbash
,gdb
...),zle
(digunakan olehzsh
),pdksh
ketika dalamvi
mode, berperilaku sepertivi
dalam hal itu dan ketika dalamemacs
mode berperilaku seperti disiplin garis tty (tidakemacs
).libedit
(digunakan oleh kulit BSD atau (opsional)dash
),tcsh
AT&Tksh
, dalamemacs
mode, berperilaku seperti diemacs
mana tanda^W
akan dihapus (awalnya pada awal buffer).Untuk menghapus sebuah kata maju, di
vi
editor, Anda akan melakukannya dalam mode perintah ( normal ) dengandw
untuk menghapus ke awal urutan berikutnya dari alnums atau non-alnums (atau akhir baris) dandW
untuk menghapus ke urutan berikutnya dari kosong (liontin^W
disiplin garis tty).Di
emacs
editor baris, Meta-Dakan menghapus hingga akhir urutan karakter alnum berikutnya. Operator kata gerak ( Meta-B, Meta-F) berperilaku serupa.editor baris perintah, ketika dalam
vi
mode, berperilaku sepertivi
, tetapi dalamemacs
mode, Anda memiliki dua sekolah utama:tcsh
sekolah danksh
sekolah.The
ksh
sekolah (readline
,ksh
,yash
) berperilaku sebagian besar sepertiemacs
(fish
's perilaku sedikit berbeda dalam bagaimana memperlakukan non-alnum, karakter non-spasi di keduaemacs
danvi
modus).Di
tcsh
sekolah (tcsh
,libedit
,zsh
), gerakan kata didasarkan pada kata-kata spasi-delimited sehingga konsisten dengan tty garis disiplin^W
dalam hal itu.Dalam
zsh
, perilaku dapat disesuaikan dengan gaya kata yang berbeda untuk semua widget gerak kata.Sebab
readline
, Anda bisa mendapatkantcsh
sekolah (dan Meta-Dmenghapus kata yang sama seperti Ctrl-Whalnya) dengan menambahkan ke~/.inputrc
:Atau di sisi lain, sejajarkan
^W
dengan widget gerakan kata lainnya (berperilaku seperti Meta-Backscape) dengan:Seperti apa Metakuncinya, lihat di sana .
sumber
Di Linux cobalah
Ctrl+k
untuk menghapus dari mana kursor ke akhir kata.Ada beberapa pintasan lain yang tercantum di bawah ini (berfungsi di Linux):
Ctrl+e
-> Mengambil kursor di akhir kata.Ctrl+t
-> Antar-ubah posisi huruf.Ctrl+y
-> menambahkan postfix "hh" ke kata saat ini.Ctrl+u
-> Menghapus seluruh baris.Ctrl+o
-> Bekerja sama dengan tombol Enter.Ctrl+p
-> Bekerja sama seperti tombol panah ke atas.Ctrl+a
-> Membawa kursor ke posisi awal perintah.Ctrl+d
-> Menutup terminal.Ctrl+f
-> Memindahkan kursor ke depan dengan satu Karakter.Ctrl+h
-> Bekerja sama dengan tombol Backspace.Ctrl+j
-> Bekerja sama dengan tombol Enter.Ctrl+m
-> Bekerja sama dengan tombol Enter.Ctrl+b
-> Bekerja sama dengan tombol panah kanan. 14Ctrl+4
-> Menghapus katasumber
Ctrl+k
dihapus sampai akhir baris .Ctrl+u
menghapus seluruh baris (jika kursor ada di akhir).Ctrl+d
mengirim EOF.Ctrl+e
pergi ke akhir baris , dll.