0%

zsh的坑

深夜发牢骚

还是因为对自己不自信吧,以为自己敲的命令是错的。

事件的起因是ipv6。我经常用scp,ssh,但是scp的时候ipv6的地址会报错,一看是因为冒号太多了,识别不了,可以理解。然后google了一下解决办法是加方括号把ipv6地址括起来,试了一下,还是报错no matches found,当时我的内心是这样的:卧槽,scp连ipv6地址都不支持还搞毛线。

今天又试了一下(确切说是昨天),不是scp的命令了。

想用ssh本地端口转发,又不行了。这回完全是刚才的图了。

想想自己也是很蠢的,都没有把这个错误关键字Google一下,刚才一查直接就查到了是zsh的问题。

终端要炫酷,肯定要用zsh的嘛。。。不过居然是zsh不兼容的问题,我也是服。

换成bash来执行就完全没问题了。

解决

在~/.zshrc文件中加入

1
setopt nonomatch

然后命令行输入

1
source ~/.zshrc

就没问题了。

初步看了一下问题,主要是zsh会自动解析命令中的东西,我还不知道这有啥用,可能在某些我不知道的方面是有用的吧。

实在是个坑(当我知道是zsh的问题的时候的心情无法用语言来形容)。