我需要保存的输出
apt-cache show debconf-2.0
到一个变量,但无论我如何尝试,该变量都保持为空。
debconf-2.0
是一个虚拟包,当在终端中运行它时,它返回:
N: Can't select versions from package 'debconf-2.0' as it is purely virtual
N: No packages found
我需要在脚本中获得命令输出,以查看包是否是虚拟的
grep
-检查输出是否包含“纯虚拟”。
我以正常的方式尝试:
cmd_output=$(apt-cache show debconf-2.0)
echo "$cmd_output"
但这不会产生任何结果。然后我尝试用获取stderr输出
2>&1
:
cmd_output=$(apt-cache show debconf-2.0 2>&1)
echo "$cmd_output"
其仍然不输出任何内容。另一个了解包是否是虚拟的命令也会有所帮助。
为了确认一个非虚拟包会向变量返回一些东西,我用一个正常的包尝试了一下,它输出的信息很好。
cmd_output=$(apt-cache show nano 2>&1)
echo "$cmd_output"
其返回:
Package: nano
Version: 7.2-1
Installed-Size: 2804
Maintainer: Jordi Mallace
...