Pertanyaan Bagaimana cara menghapus perintah saya dengan cepat?


Saya menggunakan terminal untuk hampir semua tugas. Katakanlah saya telah memasukkan perintah besar seperti ini:

sudo a-huge-command

Apa cara termudah untuk menghapus seluruh perintah dengan satu pintasan, daripada terus memukul menghapus kunci?

Saya seorang pemula Ubuntu yang ingin menggunakan Ubuntu dengan cara yang profesional.


163
2017-09-04 11:56


asal


Ini juga bermanfaat untuk dicatat bahwa Anda dapat mengaturnya bash (dan beberapa cangkang lainnya) untuk memahami kunci vi: set -o vi. Anda bisa melakukannya esc, dd (Atau ubah / ganti seperti yang Anda bisa lakukan di vi [m]). - Wayne Werner
Beranda, '#', Enter - Alistair Buxton
ini adalah peretasan yang murah tapi untuk apa nilainya, saya biasanya hanya menekan panah ke atas sampai saya mendapatkan perintah yang sangat singkat (misalnya, ls) dan kemudian backspace - ini biasanya hanya beberapa pukulan kunci sehingga tidak begitu besar 'kesepakatan. - KennyPeanuts
CTRL <- mengetuk beberapa kali biasanya memungkinkan saya kembali ke permulaan kueri saya .. apakah ini yang Anda maksud? - marc-andre benoit


Jawaban:


Menggunakan Ctrl+U untuk memotong teks dari posisi kursor ke awal baris perintah. Nanti, jika Anda mau, gunakan Ctrl+Y untuk menempelkan potongan teks.

Jika Anda hanya ingin membuang baris perintah saat ini dan mendapatkan perintah cepat bersih baru Ctrl+C.

Untuk referensi lebih lanjut silakan periksa dokumentasi Ubuntu untuk Menggunakan Terminal


176
2017-09-04 12:03



Jawaban ini berfungsi untuk bash (default Ubuntu) dan tsch. - Nick
Saya pikir dash adalah default Ubuntu? - Chris
dash adalah penerjemah default untuk /bin/sh perintah. bash adalah login default dan shell TTY. - darvids0n
saya menemukan Ctrl + C menjadi kebiasaan buruk, karena saya akan secara tidak sengaja mengirimkan sinyal ke program dengan prompt mereka sendiri, membunuh mereka dan kehilangan kemajuan dan / atau momentum saya. - user606723


Ctrl +  U akan membantu Anda.

Di bawah ini adalah sisa dari opsi yang tersedia. Meraih dari sini

UNIX memahami beberapa perintah tombol kontrol, perintah yang Anda masukkan dengan menekan tombol kontrol (ctrl) sambil menekan tombol kedua

CTRL + S - membeku layar dan menghentikan semua tampilan di layar dari terus (setara dengan kunci tanpa-gulir) (terkadang membutuhkan waktu sejenak untuk bekerja)

CTRL + Q - un-freeze layar dan memungkinkan tampilan layar berlanjut

CTRL + C - menyela program yang sedang berjalan

CTRL + \ - Sama seperti CTRL - C tetapi lebih kuat (digunakan ketika terminal tidak merespon)

CTRL + Z - menangguhkan program yang sedang berjalan (gunakan perintah fg untuk melanjutkan program, lihat s $

CTRL + H - Menghapus karakter terakhir yang diketik

CTRL + W - Menghapus kata terakhir yang diketikkan

CTRL + U - Menghapus baris terakhir yang diketik

CTRL + R - Mencari teks dari sejarah

CTRL + D - Mengakhiri input teks untuk banyak program UNIX, termasuk mail dan menulis.

catatan:

Ketika kami menghapus menggunakan CTRL + W atau CTRL + U, kami juga melakukan operasi (sunting) "cut" (tarik masuk) (hapus dan simpan di buffer / clipboard). Untuk menempel (tarik) string di buffer / clipboard, gunakan CTRL + Y.


109
2017-09-04 12:04



Sebenarnya ctrl-r mencari teks dari sejarah. - Eric Carvalho
@EricCarvalho Kamu benar. Menghapus opsi itu dari jawabannya. - devav2
Ini adalah kode kontrol UNIX generik. Terminal ubuntu default berbasis bash, yang berbeda. - OrangeDog
Ctrl-U menghapus dari kursor ke awal baris. Saya sering menggunakannya dengan menempatkan kursor tepat sebelum argumen ke perintah dari sejarah. Dengan begitu, saya bisa mengetikkan perintah baru menggunakan argumen yang sama - seperti mengubah lebih sedikit file menjadi kate file sehingga saya bisa mengedit file setelah saya melihatnya untuk melihat apakah ada pengeditan yang diperlukan. - Joe
@OrangeDog - Ini bagus - Saya menggunakan semua ini di terminal bash-bashed Ubuntu saya, dengan pengecualian CTR- \ satu. - belacqua


Saya biasanya menggunakan Alt+Menghapus. Jika Anda menggunakan bash, ini akan membiarkan Anda menghapus hingga karakter khusus sebelumnya (/, ;, , dll.). Jika Anda menggunakan zsh, itu akan menghapus garis miring dan titik koma juga. Itu jauh lebih cepat daripada hanya memukul Menghapus.

Di bash, ini berbeda dari Ctrl+w dalam artian itu Ctrl+w menghapus kata wheres sebelumnya Alt+Menghapus menghapus hingga karakter khusus sebelumnya ditemukan. Di zsh, kedua kombinasi tombol melakukan hal yang sama


61
2017-09-04 12:00



Ctrl + W melakukan hal yang sama. - hytromo
Tidak akan berfungsi untuk terminal seperti rxvt sekalipun. - sqram
@lyrae Bagi saya itu bekerja dengan sempurna di rxvt, meskipun tidak di xterm. Dan itu hanya berfungsi jika set -o emacs diatur. - Marco
saya menggunakan ALT+Backspace sebaik CTRL+C. Ini berfungsi di linux apa saja. :) - tftd
@hakermania: Tidak, ini berbeda. Ctrl + w menghapus kata dan Alt + Backspace menghapus hingga karakter khusus sebelumnya (/, ;, ``, dll. - jobin


Ini dia daftar cara pintas keyboard yang dapat digunakan dengan bash kulit.

Ctrl + A    Go to the beginning of the line you are currently typing on
Ctrl + E    Go to the end of the line you are currently typing on
Ctrl + L    Clears the Screen, similar to the clear command
Ctrl + U    Clears the line before the cursor position. If you are at the end of the line, clears the entire line.
Ctrl + H    Same as backspace
Ctrl + R    Lets you search through previously used commands
Ctrl + C    Kill whatever you are running or start a new prompt
Ctrl + D    Exit the current shell
Ctrl + Z    Puts whatever you are running into a suspended background process. fg restores it.
Ctrl + W    Delete the word before the cursor
Ctrl + K    Clear the line after the cursor
Ctrl + T    Swap the last two characters before the cursor
Esc + T     Swap the last two words before the cursor
Alt + F     Move cursor forward one word on the current line
Alt + B     Move cursor backward one word on the current line
Tab         Auto-complete files and folder names

Apa yang ingin Anda lakukan tercapai juga Ctrl+C atau Ctrl+U di akhir baris.


33
2017-09-04 18:42



Ini adalah daftar paling lengkap, Meskipun jawaban terbaiknya adalah Ctrl+C atau (Ctrl+E  Ctrl+U) - New Alexandria
Berapa banyak dalam daftar yang berlaku untuk tcsh, yang saya minati? - TCSGrad
@ shan23 Baca bagian "Perintah editor" dari man tcsh, atau digunakan bindkey -l. Kelihatannya sangat berbeda. - OrangeDog
Perhatikan bahwa beberapa di antaranya akan gagal jika Anda menggunakan vi bindings untuk bash's (atau shell lain) Readline. Ini sebagian besar harus berlaku untuk tcsh juga; ini bash pra-tanggal. bash juga memasukkan banyak shortcut sejarah yang bagus dari csh / tcsh. - belacqua


Alt+# (yaitu., Alt+Bergeser+3) akan mengomentari perintah saat ini dan melanjutkan ke baris berikutnya.

Misalnya, jika Anda mengetik t, e, s, t, Alt+#, Anda akan mendapatkan:

you@computer$ #test
you@computer$ 

Jika Anda ingin mendapatkan kembali perintah lama, Anda dapat menekan panah ke atas dan menghapus karakter hash (Naik, Rumah, Menghapus atau Naik, Ctrl+SEBUAH, Menghapus).

Saya pikir itu fitur GNU Readline, karena berfungsi di Bash, Python, dan MySQL.


24
2017-09-04 17:21





 Ctrl + C - selain mengganggu perintah yang sedang berjalan, ini dapat digunakan untuk "mengganggu" masukan baris perintah Anda juga.

Berbeda dengan  Ctrl + U, Anda masih akan melihat apa yang telah Anda ketikkan tetapi kursor Anda akan melompat ke baris baru dan Anda akan mendapatkan prompt baris perintah kosong.


22
2017-09-04 12:16



Saya lebih memilih ini hanya karena memori otot, dan Anda masih bisa menyalin / menempelkan sesuatu yang penting karena baris perintah yang dibatalkan tetap di sana. - ish


The Bash readline jalan pintas Ctrl+X+E memang sangat berguna ketika Anda bekerja pada baris perintah. Jika Anda sedang dalam proses memasukkan perintah panjang dan memutuskan bahwa Anda ingin membukanya di editor teks default Anda, yang harus Anda lakukan hanyalah menggunakan pintasan.

Itu memanfaatkan Bash readline pustaka dan pintasan khusus ini disebut edit-and-execute-command. Anda dapat mengatur editor default Anda dengan menempatkan export EDITOR="/usr/bin/vi" di ~/.bashrc atau ~/.bash_aliases.

Memasukkan bind -P untuk melihat Anda saat ini readline bindings dan lihat man readline atau Ubuntu manpages online untuk informasi lebih lanjut.


8
2017-11-14 21:06





Saya juga menggunakan ESC+Menghapus untuk menghapus semua karakter sebelumnya hingga karakter khusus. Ini sama Alt+Menghapus. Berguna jika Anda hanya menghapus beberapa kata dalam satu waktu.


7
2017-09-06 15:53