Вопрос о специальных переменных. Документация гласит:
!!:$
обозначает последний аргумент предыдущей команды . Это может быть сокращено до! $.
(
$_
подчеркивание.) При запуске оболочки задайте абсолютный путь, используемый для вызова оболочки или сценария оболочки, выполняемого в том виде, как он был передан в среде или списке аргументов. Впоследствии, расширяется до последнего аргумента предыдущей команды после раскрытия. Также задайте полный путь, используемый для вызова каждой команды, выполненной и помещенной в среду, экспортированную в эту команду.
Должна быть какая-то разница, которую я не могу уловить, потому что:
$ echo "hello" > /tmp/a.txt
$ echo "!$"
echo "/tmp/a.txt"
/tmp/a.txt
$ echo "hello" > /tmp/a.txt
$ echo $_
hello
В чем разница?
$_
$_
!$