我可以通过两步清理我当前的Python环境
pip freeze > requirements.txt
pip uninstall -r requirements.txt -y
我想知道是否可以通过管道传输这两个命令来避免创建临时文件(以及为什么或为什么不)。天真的方法(如下)似乎不起作用
pip freeze | pip uninstall -y -r
pip uninstall -r
需要一个参数——一个文件,所以你不能完全这样做。即使标准符号 -
(读取标准输入)也不起作用:
$ pip freeze | pip uninstall -y -r
Usage:
pip uninstall [options] <package> ...
pip uninstall [options] -r <requirements file> ...
-r option requires 1 argument
$ pip freeze | pip uninstall -y -r -
ERROR: Could not open requirements file: [Errno 2] No such file or directory: '-'
在 Linux 上,您可以使用此技巧将 stdin 作为文件读取:
$ pip freeze | pip uninstall -y -r /dev/stdin
不知道类似的东西在不同的Unice中是否可用。
最后,最便携的方式是:
$ pip freeze | xargs pip uninstall -y