На этот вопрос уже есть ответ здесь:
Ну, у меня есть несколько каталогов, имена которых содержат хеши (#, например: #abczxy).
Теперь я не могу выполнить этот cd #foo
он перенаправит меня обратно в корневой каталог, как и эта команда cd
Вопрос в том, возможно ли это сделать или есть какие-то уловки разрешите мне это сделать?
Спасибо.
Заключите имя каталога в кавычки:
$ cd '#foo'
Или Escape это с помощью обратной косой черты:
$ cd \#foo
$ cd bar# #works
вторые работы, так как комментарий в конце строки должен иметь пробел прежде #
.
Или дают полный путь:
$ cd ./#foo
В дополнение к ответ @muru , можно отключить удар опция interactive_comments :
shopt -u interactive_comments
Теперь, Вы можете cd
к каталогу, запускаются с #
обычно:
$ cuonglm at /tmp
$ cd #asd
$ cuonglm at /tmp/#asd
$ pwd
/tmp/#asd