今天用 rsync 命令同步文件到一台新vps,没想到出现了如下错误提示:protocol version mismatch — is your shell clean?通过查看rsync的文档,发现是vps的.bashrc文件中有输出内容导致,注释掉就正常了。
zsh中使用scp命令时*通配符会出现”no matches”的错误,而同样命令在bash中则能正常工作。这是因为zsh会在命令执行前尝试展开*通配符,因为本地未匹配到故而报错。解决办法有两种:第一是用引号或者反斜杆阻止zsh展开*通配符;第二种则是设置no match选项:setopt nonomatch。