Есть ли способ развернуть !$
в командной строке при интерактивном редактировании команды внутри оболочки?
Например, когда я набираю ls !$
, я нажимаю кнопку, а затем вижу, что такое значение !$
.
Есть ли способ развернуть !$
в командной строке при интерактивном редактировании команды внутри оболочки?
Например, когда я набираю ls !$
, я нажимаю кнопку, а затем вижу, что такое значение !$
.
Вы хотите, чтобы эта последовательность обрабатывалась буквально без расширения? Вы можете цитировать его с апострофа: '!$'
UPDATE Если вы хотите, чтобы развернуть его перед выполнением, вы можете использовать Ctrl-Alt-E, но учтите, что она будет выполнять «разложение слова», а также, так !$ "single argument"
будет расширен до expanded_string single argument
(без кавычек => два аргумента).
Вы также можете использовать Alt-_ (работает как в режимах emacs, так и в режимах vi), или Alt-. (работает только в режиме emacs), чтобы просто вставить последний аргумент предыдущей команды напрямую, без какого-либо расширения.
Вы можете просто использовать:
!$:p
Это напечатает последнее слово последней выполненной команды.
Или типа Ctrl-Alt-е расширить !$
Или введите ESC. получить !$
Отлично. 'Ctrl-Al-E' работает в режиме редактирования emacs. Знаете ли вы аналогичный волшебный ключ в режиме редактирования vi? – viebel
Вы печатаете !$
и после этого нажать: Alt-^
и !$
расширяется немедленно.
Благодаря @Alexis за его ответ на https://stackoverflow.com/q/9360013/813665, который показывает мне мощность Alt-^
.
Можете ли вы получить более подробную информацию о том, что вы имеете в виду под «разрешить!»? Вы хотите, чтобы он расширялся? – anubhava
да, я хочу, чтобы он расширялся. – viebel