加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XCode 4.3命令行工具

发布时间:2020-12-15 01:52:31 所属栏目:百科 来源:网络整理
导读:Apple最近发布了 Command Line Tools: 命令行工具包中提供了哪些工具? 除了手册页之外还有某种文档吗? 请注意,我已通过在Xcode中添加特定组件来安装这些工具。 此外,这不是关于Xcode项目,而是Apple于2012年2月16日发布的软件包! 解决方法 打开命令行
Apple最近发布了 Command Line Tools:

>命令行工具包中提供了哪些工具?
>除了手册页之外还有某种文档吗?

请注意,我已通过在Xcode中添加特定组件来安装这些工具。
此外,这不是关于Xcode项目,而是Apple于2012年2月16日发布的软件包!

解决方法

打开命令行工具DMG,您将找到一个元数据包,您可以使用命令pkgutil –expand“Command Line Tools.mpkg”元数据包提取该元数据包。打开刚刚在文本编辑器中提取的元数据包/分发文件,以查看构成元数据包的软件包:

com.apple.pkg.DevSDK
com.apple.pkg.X11SDK
com.apple.pkg.QuickTimeSDK
com.apple.pkg.OpenGLSDK
com.apple.pkg.WebKitSDK
com.apple.pkg.FireWireSDK
com.apple.pkg.BluetoothSDK
com.apple.pkg.CoreAudioSDK
com.apple.pkg.JavaSDK
com.apple.pkg.clang
com.apple.pkg.llvm-gcc4.2
com.apple.pkg.X11Documentation
com.apple.pkg.DeveloperToolsCLI

相应的包文件位于元数据包旁边的隐藏包目录中。它们的内容可以用pkgutil –payload-files列出。

如果磁盘上有文件,并且想知道它来自哪个软件包:

$ pkgutil --file-info /usr/bin/clang
volume: /
path: /usr/bin/clang

pkgid: com.apple.pkg.clang
pkg-version: 4.3.0.0.1.1249367152
install-time: 1342021874
uid: 0
gid: 0
mode: 755

现在,一些奖励信息,如果你想删除命令行工具将是有用的。 Apple以其无限的智慧拒绝提供这样做的工具,但我们可以通过使用pkgutil显示有关已安装软件包的信息来获取所需的信息。

首先,pkgutil –pkgs将列出所有已安装的软件包。比较上面的包列表的输出。

pkgutil –info将显示有关已安装软件包的信息;例如:

$ pkgutil --info com.apple.pkg.clang
package-id: com.apple.pkg.clang
version: 4.3.0.0.1.1249367152
volume: /
location: /
install-time: 1342021874
groups: com.apple.FindSystemFiles.pkg-group com.apple.DevToolsBoth.pkg-group com.apple.DevToolsNonRelocatableShared.pkg-group

pkgutil –files将显示已安装包的内容,相对于pkgutil –info给出的卷和位置字段。因为不使用绝对路径,所以不能简单地将此命令的输出传递给xargs rm -f以删除包的文件;你必须自己修复路径,也许是像pkgutil这样的路径 – 文件com.example.pkgname |读线;做rm -f“/ install_location / $ line”;完成。

删除程序包的文件后,应运行pkgutil –forget以从程序包数据库中删除有关已安装程序包的信息。

不言而喻,如果你这样做,你应该非常小心:你是一个错误的错误,你必须重新安装它,以免你的宝贵数据!

pkgutil还有一些其他有用的选项可用于验证包的文件是否全部存在,以及用于恢复其权限;详见its manual page。

一般来说,这适用于任何软件包,但请注意,某些软件包可以包含在安装软件包时运行的嵌入式脚本;显然,仅删除软件包的文件不会从系统中删除软件包的所有痕迹。您必须提取包的内容并阅读脚本源代码,然后决定如何最好地自行撤消脚本的效果。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读