Phím tắt của shell xóa từ xóa Phím tắt xóa quá nhiều ký tự


9

Dưới thời Bash, một số hành vi của Alt+ dđã khiến tôi phát điên từ nhiều năm và tôi nhận ra rằng có lẽ nó có thể được sửa bằng một cài đặt.

Nếu tôi ở một thiết bị đầu cuối và đưa ra một lệnh như thế này:

...$   cat >> ~/notesSuperLongFilename.txt

và sau đó nếu tôi muốn, nói, để phát hành:

...$ scp ~/notesSuperLongFilename.txt

Tôi muốn lấy lại "cat >> ~ / NotesSuperLongFilename.txt" bằng cách sử dụng Ctrl + p (dòng trước) và sau đó làm Ctrl+ avà sau đó Alt+ dAlt+ dmột lần nữa để tôi có:

...$  ~/notesSuperLongFilename.txt

và sau đó tôi có thể chỉ cần nhập "scp" và sau đó thực hiện dấu Ctrl+ m(hoặc nhấn Enter / Return).

Tuy nhiên nó không hoạt động vì sau lần đầu tiên Alt+ dtôi nhận được:

...$ >> ~/notesSuperLongFilename.txt

(càng xa càng tốt)

nhưng sau lần thứ hai Alt+ dtôi nhận được:

...$ .txt

Vì vậy, vì một số lý do Alt+ dxóa ">> ~ / NotesSuperLongFilename" cùng một lúc thay vì chỉ xóa ">>" .

Đây phải là công cụ xử lý thời gian lớn nhất khiến tôi phát điên với Linux / Bash kể từ nhiều năm.

Vì vậy, làm thế nào tôi có thể khắc phục hành vi này (có thể bị phá vỡ) của Alt+ d?

Tái bút: Tôi không biết ai "chịu trách nhiệm" cho hành vi Alt+ đó d: Tôi không biết đó là thiết bị đầu cuối hay nếu đó là vỏ (Bash trong trường hợp của tôi).


sau "cat >> ~ / NotesSuperLongFilename.txt", nhập "scp" và sau đó Esc ,. (Thoát một lần và sau đó là nhân vật "." Một lần)
Mathieu

Câu trả lời:


3

Tôi không biết ai "chịu trách nhiệm" cho hành vi Alt + d đó: Tôi không biết đó là thiết bị đầu cuối hay nếu đó là vỏ (Bash trong trường hợp của tôi).

Đó là bash, cụ thể là thiết lập chỉnh sửa dòng lệnh mặc định. Đây là một trang hay về những lệnh nào có thể bị ràng buộc và cách thay đổi các ràng buộc mặc định.

Ràng buộc mặc định cho Alt-dkill-wordhoạt động giống như lệnh cùng tên trong Emacs. Tuy nhiên, như bạn đã quan sát, không phải Emacs sẽ coi khoảng trống giữa >>và dấu ngã trong ví dụ của bạn là một từ ngắt. Điều đó bashkhông, tôi sẽ xem xét một lỗi. Không nhận được nguồn bash, thay đổi và biên dịch lại, tôi không biết bạn có thể làm gì.


1
Điều này dường như là một lỗi. Tôi sẽ báo cáo với nhóm Bash.
Ernie
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.