Как ctrl + / работает как отмена в Zsh 5.7.1 в Debian 10.0?

Использование awk с разделителем полей, установленным в соответствии с шаблоном поиска:

awk -F'Apple' '{count+=NF-1}END{print count}' file

Переменная countувеличивается с количеством полей и печатается в конце файла.


Альтернатива, использующая GNU awk, необходимая для использования RS в качестве регулярного выражения (границы слова, спасибо @cas):

 awk -v RS='\\<Apple\\>' 'END{print NR-1}' file

Это просто проверяет, сколько записей NRнайдено в файле.

1
15.01.2021, 21:55
1 ответ

Нет управляющего символа для Control + / , поэтому нет естественного выбора символа или последовательности символов, которую терминал может отправить. Многие терминалы отправляют ^_, т.е. тот же символ, что и Control + _. Сюда входят xterm, rxvt, konsole и все терминалы, основанные на библиотеке vte (Gnome Terminal, Mate Terminal, lxterminal, Terminator, … ), но не macOS, встроенные -в приложение Terminal.

Вы можете увидеть, что отправляет ваш терминал, набрав Ctrl + V , затем Ctrl + / . Ctrl + V означает «буквально вставить следующий символ» (, даже если иначе это интерпретировалось бы как команда ).

(О роли терминала см. Как работает ввод с клавиатуры и вывод текста?)

^_— это сочетание клавиш для отмены в Emacs и приложениях с сочетаниями клавиш, вдохновленными Emacs -.

2
18.03.2021, 22:36

Теги

Похожие вопросы