C -c C -j переключается в построчный режим, когда вам нужно сделать Emacs -y что-то с буфером (Term :line run )появляется в строке состояния
C -c C -k переключается обратно в режим char, когда вам нужно, чтобы он снова работал как терминал (Term :char run )отображается в строке состояния
Похоже, вы хотите сопоставить все случаи, когда есть граница слова\b
послеscan_document
:
$ grep 'cronjob\.php scan_document\b' << EOF
php cronjob.php test
php cronjob.php scan_document
php cronjob.php scan_document -v
php cronjob.php scan_documenttest -v
php cronjob.php scan_document_callback_retry
EOF
php cronjob.php scan_document
php cronjob.php scan_document -v
Обратите внимание, что я избежал точки в cronjob.php
-, иначе она может соответствовать любому одиночному символу.
Ваш grep
выполняет свою работу, ваш шаблон ничего не говорит о том, как заканчивается строка. Вы должны добавить его тогда:
$ grep "cronjob\.php scan_document$\|cronjob\.php scan_document[[:blank:]].*$" file
php cronjob.php scan_document
php cronjob.php scan_document -v
Мы загружаем grep
двумя шаблонами, один конец строки $
, а другой пробел и далее [[:blank:]].*$
.
Первый аргумент скрипта php должен быть равенscan_document
:5
$ awk '$3 == "scan_document"' file
php cronjob.php scan_document
php cronjob.php scan_document -v