4

Я видел, как кто-то делает:

cp . yy/
cd !$

последняя строка переведена на:

cd yy/

так я думаю !$ означает "последний аргумент из предыдущей строки".

Я прав?

Есть ли другие замены такого рода?

Где я могу найти документацию для них?

1 ответ1

9

!$ - последнее слово последней команды.

Больше:

!! - Последняя команда
!foo - запустить самую последнюю команду, начинающуюся с foo (напр. !ps !mysqladmin)
!foo:p - команда Print это !foo запустится и добавит его как последний в историю команд
!$ - последнее слово в последней команде (/path/to/file в команде ls -lAFh /path/to/file , -uroot в mysql -uroot)
!$:p - напиши слово это !$ заменит
!* - Все, кроме первого слова последней команды (-lAFh /path/to/file в команде ls -lAFh /path/to/file , -uroot в mysql -uroot)
!*:p - печатать слова, которые!* заменит

^foo^bar - замените foo в последней команде на bar , напечатайте результат, затем запустите. (mysqladmni -uroot , запустить ^ni^in , приводит к mysqladmin -uroot)

{a,b,c} передает слова команде, последовательно подставляя a , b и c (cp file{,.bk} запускает cp file file.bk)

Ctrl + a - Перейти к началу строки
Ctrl + b - переместить назад символ
Ctrl + c - завершить команду
Ctrl + d - Удалить из-под курсора
Ctrl + e - Перейти к концу строки
Ctrl + f - переместить вперед символ
Ctrl + k - Удалить в EOL
Ctrl + l - очистить экран
Ctrl + r - поиск в истории назад
Ctrl + R - Поиск истории в обратном направлении с многократным вхождением
Ctrl + t - транспонировать текущий символ с предыдущим
Ctrl + u - Удалить назад от курсора
Ctrl + w - удалить слово назад
Ctrl + xx - перемещение между EOL и текущей позицией курсора
Ctrl + x @ - Показать возможные дополнения имени хоста
Ctrl + z - приостановить / остановить команду
Ctrl + x; Ctrl + e - Редактировать строку в ваш любимый редактор

Alt + < - перейти к первой строке в истории
Alt +> - Перейти к последней строке в истории
Alt +? - Показать текущий список завершения
Alt + * - вставить все возможные дополнения
Alt + / - Попытка завершить имя файла
Alt +. - дергать последний аргумент предыдущей команды
Alt + b - двигаться назад
Alt + c - Прописать слово
Alt + d - Удалить слово
Alt + f - двигаться вперед
Alt + l - сделать слово строчным
Alt + n - поиск в истории форвардов без инкремента
Alt + p - поиск в истории назад без инкремента
Alt + r - команда отзыва
Alt + t - транспонировать текущее слово с предыдущим
Alt + u - сделать слово заглавным
Alt + back-space - Удалить назад от курсора

С http://cheat.errtheblog.com/s/bash/.

Кроме того, здесь много полезного: http://www.gnu.org/software/bash/manual/bashref.html
и здесь: http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_04.html.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .