zsh pip 找不到包高速公路[序列化]

zshell pip can't find package autobahn[serialization]

我正在尝试安装 serialization 高速公路的变体。但是,当我在 zsh 中执行此操作时,出现错误。

zsh: no matches found: autobahn[serialization]

但是,只要我使用 bash,它就会起作用。下面是我的命令行日志:

kapil@kapil-linux ~                                                                                                                                                                                 

    [23:59:19] 
> $ pip install autobahn[serialization]                                                                                                                                                                           
zsh: no matches found: autobahn[serialization]

kapil@kapil-linux ~                                                                                                                                                                                     [23:59:25] 
> $ bash                                                                                                                                                                                                          
[kapil@kapil-linux ~]$ pip install autobahn[serialization]
Collecting autobahn[serialization]
  Using cached autobahn-0.16.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): six>=1.10.0 in ./anaconda2/lib/python2.7/site-packages (from autobahn[serialization])
Requirement already satisfied (use --upgrade to upgrade): txaio>=2.5.1 in ./anaconda2/lib/python2.7/site-packages (from autobahn[serialization])
Requirement already satisfied (use --upgrade to upgrade): u-msgpack-python>=2.1; extra == "serialization" in ./anaconda2/lib/python2.7/site-packages (from autobahn[serialization])
Requirement already satisfied (use --upgrade to upgrade): py-ubjson>=0.8.4; extra == "serialization" in ./anaconda2/lib/python2.7/site-packages (from autobahn[serialization])
Requirement already satisfied (use --upgrade to upgrade): cbor>=1.0.0; extra == "serialization" in ./anaconda2/lib/python2.7/site-packages (from autobahn[serialization])
Installing collected packages: autobahn
Successfully installed autobahn-0.16.0
[kapil@kapil-linux ~]$ pip install --upgrade --force-reinstall autobahn[serialization]
Collecting autobahn[serialization]
  Using cached autobahn-0.16.0-py2.py3-none-any.whl
Collecting six>=1.10.0 (from autobahn[serialization])
  Using cached six-1.10.0-py2.py3-none-any.whl
Collecting txaio>=2.5.1 (from autobahn[serialization])
  Using cached txaio-2.5.1-py2.py3-none-any.whl
Collecting u-msgpack-python>=2.1; extra == "serialization" (from autobahn[serialization])
Collecting py-ubjson>=0.8.4; extra == "serialization" (from autobahn[serialization])
Collecting cbor>=1.0.0; extra == "serialization" (from autobahn[serialization])
Installing collected packages: six, txaio, u-msgpack-python, py-ubjson, cbor, autobahn
  Found existing installation: six 1.10.0
    Uninstalling six-1.10.0:
      Successfully uninstalled six-1.10.0
  Found existing installation: txaio 2.5.1
    Uninstalling txaio-2.5.1:
      Successfully uninstalled txaio-2.5.1
  Found existing installation: u-msgpack-python 2.1
    Uninstalling u-msgpack-python-2.1:
      Successfully uninstalled u-msgpack-python-2.1
  Found existing installation: py-ubjson 0.8.5
    Uninstalling py-ubjson-0.8.5:
      Successfully uninstalled py-ubjson-0.8.5
  Found existing installation: cbor 1.0.0
    Uninstalling cbor-1.0.0:
      Successfully uninstalled cbor-1.0.0
  Found existing installation: autobahn 0.16.0
    Uninstalling autobahn-0.16.0:
      Successfully uninstalled autobahn-0.16.0
Successfully installed autobahn-0.16.0 cbor-1.0.0 py-ubjson-0.8.5 six-1.10.0 txaio-2.5.1 u-msgpack-python-2.1
[kapil@kapil-linux ~]$ exit
exit

kapil@kapil-linux ~                                                                                                                                                                                      [0:00:27] 
> $ pip install autobahn[serialization]                                                                                                                                                                           
zsh: no matches found: autobahn[serialization]

我不明白 zsh 会发生什么。

此外,这是我的 which pip:

的输出
> $ which pip                                                                                                                                                                                                     
~/anaconda2/bin/pip                                                                                                                                                                                                                
kapil@kapil-linux ~                                                                                                                                                                                      [0:18:24] 
> $ bash                                                                                                                                                                                                          
[kapil@kapil-linux ~]$ which pip
~/anaconda2/bin/pip
[kapil@kapil-linux ~]$ 

方括号是zsh中的特殊字符,可以用反斜杠转义:

pip install autobahn\[serialization\]

escape square brackets by default in zsh.