Це цифровий аргумент , особливість бібліотеки readline, вбудованої у bash
:
digit-argument (M-0, M-1, ..., M--)
Add this digit to the argument already accumulating, or start a
new argument. M-- starts a negative argument.
Ця функція спрощує додавання або видалення тексту в редактованому командному рядку. Скажімо, ви хочете написати echo gggg
:
- Введіть,
echo
а потім пробіл
- Натисніть Meta (який може бути Win, Altі / або Escдля вас) і типу
4g
Але як часто потрібно стільки разів набирати одну букву, щоб це нічого не врятувало? Ця функція в першу чергу розроблена для команд зчитування рядків , див. Глави 8.2.1–8.2.3 Довідкового посібника (значення «C»Ctrl «M», що означає мета).
Ви можете перемістити одне слово назад за допомогою мета та B , але що робити, якщо ви хочете повернути кілька слів назад? Ви можете утримувати Altта натискати Bкілька разів або використовувати аргумент цифри:
У вашому командному рядку написано друк із п’ятьма словами назад:
$ echo one two tree four five six seven█
Натисніть клавішу Meta, введіть 5
і натисніть Meta іB . Et violà:
$ echo one two █ree four five six seven
- Зафіксуйте помилку друку та натисніть, Enterщоб стріляти абоEnd або Ctrl+ , Eщоб знову перейти до кінця рядка.
Ви можете видалити одне слово, натиснувши Meta та Backspace , але що робити, якщо ви хочете видалити кілька слів одночасно?
Ви забули слово в командному рядку:
$ echo one two four five six seven█
Натисніть клавішу Meta, введіть 4
і натисніть Meta і Backspace.
$ echo one two █
Введіть пропущене слово, а потім пробіл та натисніть Ctrl+, Yщоб вставити щойно видалене слово . Et violà:
$ echo one two three four five six seven█
Ви маєте рацію, ви могли також переїхати туди, як тільки пояснили, нічого не видаляючи. Ми в Linux, завжди є кілька способів зробити те саме.
І що таке "негативний аргумент"? Це робиться так само, але в зворотному напрямку, тому Meta -2
Meta Backspaceвидаляє наступні два слова командного рядка. "Але можна було б використати" Мета "1
Meta, Dщоб зробити те ж саме!" Радий, що ви отримали це, ласкаво просимо до вашого командного рядка.
Подальше читання: