如何使用Conda命令查看各环境占用的磁盘空间?
列出Conda环境磁盘占用的方法
Conda并没有内置命令可以直接替代conda env list并同步显示每个环境的磁盘占用大小,但可以通过系统命令与conda命令结合的方式实现需求。
Linux/macOS 方案
使用Shell脚本结合conda env list和du命令统计:
conda env list | grep -v '^#' | while read -r env path rest; do if [ -n "$path" ]; then size=$(du -sh "$path" | cut -f1) echo "$env: $size ($path)" fi done
- 脚本逻辑:过滤掉
conda env list输出的注释行,遍历每个环境路径,用du -sh计算目录的人类可读大小,最后格式化输出环境名称、大小和路径。
Windows PowerShell 方案
用PowerShell脚本实现类似功能:
conda env list | Select-String -Pattern '^\S+\s+\S+' | ForEach-Object { $parts = $_.Line -split '\s+' $envName = $parts[0] $envPath = $parts[1] if (Test-Path $envPath) { $size = (Get-ChildItem $envPath -Recurse | Measure-Object -Property Length -Sum).Sum $sizeGB = [math]::Round($size / 1GB, 2) "$envName: $sizeGB GB ($envPath)" } }
- 脚本逻辑:筛选出有效环境条目,拆分环境名称和路径,递归计算目录总大小后转换为GB单位,格式化输出结果。
注意事项
- 统计大环境时可能需要较长时间,取决于环境内文件的数量和大小。
- 若环境路径包含空格,上述脚本可能需要调整分割逻辑,但默认conda创建的环境路径通常不含空格。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

