有没有办法给命令 cd 添加别名以保护参数?

有没有办法给命令 cd 添加别名以保护参数?

当我跑步时

cd My folder

出现错误是因为我没有保护字符串。

bash: cd: My: No such file or directory

但这很好用

cd "My folder"

有没有办法重新定义cd为别名或函数,以便它自动将所有以下参数保护为一个字符串?

这种方法没有奏效,因为我认为它不会奏效:

cd () { cd "$*" ; }

答案1

您可以这样做,但前提是目录名不包含多个连续的空格,并且除空格之外不包含任何 shell 特殊字符。

cd () { builtin cd "$*"; }

实际上,使用完成:输入cd My然后按Tab。Bash 将在特殊字符前插入反斜杠。

相关内容