mkdir和z氧化物到新目录



我在macos上使用zoxide进行目录导航(即替代cd命令)。我想有一个简单的bash函数来创建一个新目录,然后立即将zoxide放入其中。

我对这个漂亮的答案做了一个小的修改,如下:

mcd ()
{
mkdir -p -- "$1" &&
z  -P -- "$1"
}

然后我尝试在~/Desktop中运行它以创建一个全新的(即不存在的)目录~/Desktop/my_templates,如下所示:

~/Desktop             
> mcd mytemplates
zoxide: no match found

我认为问题是zox还没有意识到新目录mytemplates的存在,因此无法导航到它。

我也试过删除&&,看看是否运行mkdirz作为单独的命令会有所帮助,但同样的问题发生了。

谁能解释一下如何解决这个问题?

问题出现在

z -P -- "$1"

我改成了

z "$1"

由于-Pcd特定的语法来解析符号链接。对于zox,似乎要解析符号链接,这是通过在这里更改_ZO_RESOLVE_SYMLINKS配置设置来完成的。

所以所需函数的最终形式现在是

mcd (){
mkdir -p -- "$1" &&
z "$1"
}

按预期工作

最新更新