[英]What does “bash - apt-get” do differently from just “apt-get” in this command?
[英]bash get package size with dependencies apt
我怎样才能得到循环中所有包裹的总和?
我想我必须使用 bc 但我现在一无所知
#!/bin/bash
a=$(sudo apt install $1 -s 2>/dev/null | grep Inst | awk '{ print $2 }')
for i in $a; do
b=$(apt show $i 2>/dev/null | grep Installed-Size | awk '{ print $2 }')
done
您可以使用dpkg-query
,而不是使用apt
在脚本中提取有关包的信息,它具有稳定的界面,正如评论中已经提到的。
例如,您可以只获取软件包的Installed-Size
,每行一个,然后将数字与awk
:
$ dpkg-query -Wf '${Installed-Size}\n' | awk '{ sum += $0 } END { print sum " KB" }'
4650121 KB
请注意, Installed-Size
将为您提供:
估计安装命名的 package 所需的磁盘空间总量。 实际安装大小可能因块大小、文件系统属性或 package 维护者脚本所采取的操作而异。
磁盘空间以估计安装大小的 integer 值(以字节为单位)除以 1024 并向上取整给出。
有关dpkg-query
的更多信息: man dpkg-query
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.