Ini tergantung pada shell yang dimaksud.
Beberapa shell (seperti AT&T ksh88) hampir tidak menawarkan pengeditan input line.
Di shells yang menerapkan vi
mode editing (Anda mungkin harus mengaktifkan ini dengan set -o vi
), ini dilakukan dengan menekan Esc(untuk beralih dari mode insert) diikuti dengan 0untuk melompat ke awal baris atau $untuk melompat ke akhir baris. Kemudian masukkan kembali mode penyisipan dengan menekan i- kursor akan tetap di tempatnya - atau a- kursor akan memindahkan satu ke kanan untuk menambahkan teks.
vi
pengeditan mode baru-baru ini dimandatkan oleh standar POSIX.
The jauh lebih umum emacs
editing modus (terima dewa, itu tidak ada hubungannya dengan Emacs editor slash-sistem operasi) menggunakan Ctrl-Auntuk melompat ke awal baris dan Ctrl-Emelompat ke akhir baris. Mode ini mengharuskan Anda untuk menjalankan set -o emacs
banyak shell (paling jelas AT&T ksh93) tetapi diaktifkan secara default di mksh dan GNU bash.
Sebagian besar shell modern mendukung mode emacs
dan vi
mode. (Kedua mode ini membutuhkan tty untuk berfungsi.)
Dalam banyak shell, Anda dapat menyesuaikan keybindings; biasanya untuk emacs
mode, meskipun beberapa shell juga memungkinkan menyesuaikan keybinding untuk vi
mode. Jika Anda memiliki kunci yang ingin Anda gunakan untuk terikat, pertama-tama Anda harus mengetahui urutan kunci yang dihasilkannya (misalnya, pada sistem saya, Alt-CursorLeftmenghasilkan Esc+[+1+;+3+D( ^[[1;3D
; ^X
adalah Ctrl-Xdan ^[
sekarang Esc), jadi saya dapat mengetikkan sesuatu seperti
bind '^[[1;3D=beginning-of-line'
bind '"\e[1;3D":beginning-of-line'
dan pengikat kunci ini akan berubah, tergantung pada cangkangnya. Anda biasanya dapat menyimpannya di file startup ( ~/.mkshrc
, ~/.kshrc
) atau, untuk GNU bash, di ~/.inputrc
. Perhatikan bahwa tidak semua cangkang mendukung mengikat semua kunci di semua versi.
Anda biasanya dapat mengetahui karakter apa yang dihasilkan kunci dengan hanya berjalan cat
di shell, mengetik kunci dan menonton. Lalu tekan ^C
( Ctrl-C) untuk membatalkan cat
.