我有一个现有的 CentOS 安装,我想在其中安装额外的软件包。要安装的包以列表的形式提供给我,每行一个包,如下所示:
....
Cluster_Administration-en-US.noarch
ElectricFence.x86_64
GConf2.i386
GConf2.x86_64
GConf2-devel.i386
GConf2-devel.x86_64
Global_File_System-en-US.noarch
ImageMagick.i386
...
使用此文本文件,有没有办法安装列出的每个软件包?我怀疑该列表实际上是最初设置操作系统时可能已安装的“所有”软件包的列表。
答案1
是的,这样做:
yum -y install $(cat file_name)
答案2
尝试使用xargs
:
cat textfile | xargs yum -y install
答案3
您也可以在命令行中尝试此操作。
for i in `cat textfile` ; do yum -y install $i; done
对于文本文件中的每个 i,它都会执行 yum -y 安装。
答案4
将文件的行读入 array packageArr
。然后将数组的元素作为参数传递给yum install
.
readarray -t packageArr <"${fileName}"
yum install "${packageArr[@]}"