Bagaimana Anda bisa membalik arah alt-periode di Bash?


10

Di Bash, Anda dapat menekan Alt- .untuk menyisipkan argumen terakhir dari perintah sebelumnya. Jika Anda menekannya berkali-kali, itu akan mengulangi argumen terakhir dari semua perintah dalam riwayat Anda. Namun, kadang-kadang saya menekannya terlalu sering, dan saya ingin membalikkan arah bersepeda, maka maju. Apakah ini mungkin?

(yaitu jika Anda membalik-i-search dengan Ctrl- r, Anda dapat mengubah arah dengan Ctrl- s. Untuk apa analog Alt- .?)

Jawaban:


11

Jika Anda memberikan argumen negatif ke Alt- ., itu membalikkan arah. Cara termudah untuk melakukan itu (dengan gantungan kunci standar) adalah Alt- -(setara dengan argumen -1).

Jadi, setelah satu atau lebih Alt- .menekan tombol, menekan Alt- -akan menyebabkan berikutnya Alt- .untuk pergi ke arah sebaliknya. (Abaikan saja dialog argumen yang muncul saat Anda menekan Alt- -.)


1
Saya tidak yakin apa maksud Anda sebenarnya. Menekan Alt+ -menghapus prompt baris perintah dan memasukkannya (arg: -1)sebagai gantinya. Perintah itu sendiri tidak berubah.
— Sparhawk

1
Kemudian alt-. (dengan -1 arg) akan maju.
— rici

Itu keren! Saya telah mengedit jawaban untuk membuatnya sedikit lebih jelas. Apa yang sebenarnya dilakukan alt+ -?
— Sparhawk

1
@Sparhawk: seperti yang saya katakan, alt -menghasilkan argumen -1untuk perintah readline selanjutnya. Atau, lebih tepatnya, ia memulai argumen negatif, jadi alt -, alt` 2akan menghasilkan argumen -2. Dalam kasus alt ., hanya tanda dari argumen yang penting, dan hanya jika itu negatif, maka alt -sudah cukup. (Yang pertama alt .menangani argumennya secara berbeda. Lihat manual bash.)
— rici

Terima kasih. Saya sering menemukan man bashsedikit buram untuk situasi seperti itu, tetapi saya pikir itu sedikit menjelaskan di sini.
— Sparhawk
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.