Показать статистику
0 голосов
от (160 баллов)
Можете пояснить, как работает команда cd c указанием переменной в виде !$
Спасибо.
391 просмотров 1 ответов
от (1.7тыс. баллов)
0

Команда cd !$ в терминале Linux и Unix-подобных систем является сокращением для cd <последний аргумент предыдущей команды>.

Когда вы вводите команду в терминале, каждый аргумент команды сохраняется в переменных командной строки. В этом контексте, $! - это переменная командной строки, которая содержит PID (идентификатор процесса) последней фоновой команды, запущенной в текущем оболочке.

Таким образом, когда вы используете команду !$ после выполнения предыдущей команды, она будет заменена на последний аргумент предыдущей команды, что позволит сократить время на набор команд.

Например, если вы ввели команду ls -l /var/log, то команда cd !$ будет эквивалентна cd /var/log, потому что !$ заменится на /var/log, который является последним аргументом в предыдущей команде.

Таким образом, команда cd !$ перенесет вас в каталог, указанный в последнем аргументе предыдущей команды, без необходимости его повторного ввода. Это удобно, когда вы хотите быстро перейти в каталог, куда вы недавно переходили, но не помните его полного пути.

1 Ответ

+1 голос
от (17.4тыс. баллов)

!! (двойной восклицательный знак) в bash означает выполнить предыдущую команду

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

Пример: 

[mypc ~]$ echo "privet"
privet
[mypc ~]$ !$
"privet"
-bash: privet: command not found

cd - изменить каталог, т.е. перейти по пути какой вы укажете.

Команда cd !$ означает перейти в каталог, который последнее слово последней команды.


...