Bash используется для расширения переменных среды при нажатии на вкладку:
cd $PWD
приведет к расширению $PWD
. Когда вы нажмете кнопку возврата, расширенный путь войдет в вашу историю, что было действительно полезно.
Расширение переменной среды широко обсуждалось в этой группе. Мне нужно решение, которое работает как для Mac, так и для Linux и не имеет других побочных эффектов. Поэтому мы не используем shopt -s direxpand
потому что его нет на Mac.
Давайте предположим, что ваш текущий рабочий каталог - /home/user/foo
. Есть ли простой способ набрать:
cd $PWD
и есть ли cd /home/user/foo
в истории?
Обратите внимание, что очевидные вещи, такие как cd $PWD
или cd `echo $PWD`
, не работают. Команда, а не расширение, помещается в историю.
Кроме того, cd $PWD/
не совсем работает, потому что вам нужно отредактировать результат. Например, если в каталоге есть только один файл, он расширяется до полного пути к этому файлу.
Было бы неплохо, если бы расширение вкладок работало в bash, как в старые времена, но я понимаю, что это сложная тема.
Поэтому я думаю, что основной вопрос заключается в следующем: есть ли способ внести расширенную ценность среды в вашу историю?