如何 `cd` 进入名为 `-` 的目录?

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

这是一个例子。我正在创建一个名为 - 的目录,但我无法 cd 进入其中。命令 cd - 使我返回到上一个目录。我有点惊讶 cd "-" 以同样的方式工作。我可以使用完整路径 ~/- 进入该目录,但还有其他方法吗?

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:~/-$

改用

cd ./-

如果您在上面的目录中。

cd -- ./- 应该可以解决问题:)

它将 -- 之后的所有内容都视为不是命令。

或者像这样:

cd -- -/

在文件名末尾添加 / 确保文件被视为目录。