我使用的是 solaris 10,并且我有一个 pkg 文件,我怎样才能列出它的内容?
答案1
可以使用 pkgchk 命令显示(要安装的)文件的列表:
pkgchk -d package.pkg -l
如果 pkg 文件包含多个包,系统会提示你。例如
The following packages are available:
1 JetRedHat JET RedHat support
(sparc) 4.4
2 SUNWjet Sun JumpStart Enterprise Toolkit
(sparc,i386) 4.7
Select package(s) you wish to process (or 'all' to process
如果未使用 -i 选项,pkgtrans 命令可以将整个软件包从数据流更改为文件系统格式。如果您想查看软件包安装到系统后发生的操作,这将很有帮助。例如:
less SUNWjet/install/postinstall
答案2
不幸的是,Solaris 包管理系统并不容易做到这一点。您可以尝试以下方法:
pkgtrans -i <pkgfile> spool
这会将 pkginfo 和 pkgmap(文件列表)文件提取到 /var/spool/pkg/package_name。您可以在那里查看它们。
答案3
我通过下面的命令获取包内容:
$ strings <your-package-name> | grep ^"1 "
答案4
您可以运行已安装的特定包;
#pkgchk -l <packagename>
您还可以在安装之前运行并检查包内容。
pkgchk -d expect-5.45-sol10-x86-local -l
您可以检查特定路径。
pkgchk -lp /usr/local/bin/expect
检查一下 关联 了解更多详细信息和命令使用示例。