我试图使用pkgadd
实用程序在Solaris 10上静默安装软件包。见例子:
pkgadd -G -D pkg123_x64.pkg
"Select package(s) you wish to process (or 'all' to process all packages).
通过echo
与pkgadd
的管道来解决这个问题:
echo "all" | pkgadd -G -D pkg123_x64.pkg
"Processing package instance <pkg123>.."
"This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation [y,n,?]
一切都好。但我不知道如何回答第二个问题。我试过了:
echo "all y" | pkgadd -G -D pkg123_x64.pkg
但这不起作用。这可能吗?
使用:GNU bash版本3.2.51(1)Solaris 10
你可以创建一个package response file:
使用响应文件(
pkgadd
)响应文件包含您对交互式软件包提出的特定问题的答案。交互式软件包包含一个
request
脚本,在安装软件包之前会询问您的问题,例如是否应安装软件包的可选部分。如果您在安装之前知道该软件包是交互式软件包,并且您希望存储答案以防止在将来的安装过程中进行用户交互,请使用
pkgask
命令保存您的响应。有关此命令的更多信息,请参阅pkgask(1M)
。将响应存储到
request
脚本提出的问题后,您可以使用pkgadd -r
命令安装程序包而无需用户交互。
描述
pkgask
允许管理员将答案存储到交互式软件包(一个带有请求脚本的软件包,即一个必须命名为request的用户创建的文件)。调用此命令会生成一个响应文件,然后在安装时将其用作输入。使用此响应文件可防止在安装期间发生任何交互,因为该文件已包含程序包所需的所有信息。