How to `cd` into directory with the name `-`? [clo

2020-03-13 04:56发布

Here is an example. I'm creating a directory named - and I can't cd into it. The command cd - returnes me to the previous directory. And I'm a bit supprised that cd "-" works the same way. I can enter that directory using the full path ~/-, but is there other way?

user@server:~$ cd /tmp
user@server:/tmp$ cd
user@server:~$ mkdir -
user@server:~$ cd -
/tmp
user@server:/tmp$ cd
user@server:~$ cd "-"
/tmp
user@server:/tmp$ cd ~/-
user@server:~/-$

标签: bash cd
3条回答
来,给爷笑一个
2楼-- · 2020-03-13 05:35

use instead

cd ./-

if you are in the directory above.

查看更多
Melony?
3楼-- · 2020-03-13 05:38

cd -- ./- should do the trick :)

It treats everything after the -- as not a command.

查看更多
戒情不戒烟
4楼-- · 2020-03-13 05:43

or like this:

cd -- -/

Adding a / at the end of a file name ensures that the file is treated as a directory.

查看更多
登录 后发表回答