В bash(1)
(это прибывает первоначально из оболочки C), можно повторить предыдущее использование команд !
(как долго, как они находятся в истории). Так, например:
enter code here
frob --vigorous extremely/super/cali/fragi/listic/file/name
...
...
xemacs !frob:$ # Edit last argument to last frob command
!frob # Repeat last frobbing
fiddle !frob:1-$ # Fiddle, use arguments 1 to last of !frob
Синтаксис берет некоторых привыкающих к, и (из-за роскоши readline) я редко использую его, но это довольно удобно. Это (или используется, чтобы быть) somehwat хрупко, в том, например, это работало непредсказуемо в сценариях (но там я очень буду убеждаться трижды, я выполняю правильную команду, так...).
Ре 1) ответ совпадает с для любого другого инструмента, который был улучшен за десятилетия.:)
Вы не хотите повреждать существующие сценарии путем изменения поведения по умолчанию.
Ре 2), Которое не имеет никакого отношения к механизму соответствия; это - просто вопрос, которого поддерживается набор регулярных выражений. POSIX BRE означает "основное регулярное выражение".
Относительно пункта 2: gnu sed
по умолчанию использует GNU BRE
. Чтобы использовать POSIX BRE
, вы должны указать - posix