PlistBuddy简单使用
PlistBuddy简单使用
由于PlistBuddy并不在Mac默认的Path里,所以我们得通过绝对路径来引用这个工具:
- 查看帮助
/usr/libexec/PlistBuddy --help
下面我们来看看PlistBuddy的简单使用
打印:
- 初始化一个 info.plist 文件
- 打印info.plist文件
/usr/libexec/PlistBuddy -c "print" info.plist
- 在终端输入上述命令后如下所示:

添加
- 添加普通字段:
/usr/libexec/PlistBuddy -c 'Add :Version string 1.0' info.plist

- 添加数组字段,分两步走,注意:
key之间用 : 隔开,且不能有空格:
# 先添加key值
/usr/libexec/PlistBuddy -c 'Add :Application array' info.plist
# 添加value值
yans67deMacBook-Pro:needfiles huangyg$ /usr/libexec/PlistBuddy -c 'Add :Application: string app1' info.plist
yans67deMacBook-Pro:needfiles huangyg$ /usr/libexec/PlistBuddy -c 'Add :Application: string app2' info.plist
yans67deMacBook-Pro:needfiles huangyg$ /usr/libexec/PlistBuddy -c 'Add :Application: string app3' info.plist

- 添加字典字段,分两步走:
# 先添加key值
/usr/libexec/PlistBuddy -c 'Add :Person dict' info.plist
# 添加value值,
/usr/libexec/PlistBuddy -c 'Add :Age string secret' info.plist
/usr/libexec/PlistBuddy -c 'Add :Person:Name string yans67' info.plist
/usr/libexec/PlistBuddy -c 'Add :Person:sex string boy' info.plist
/usr/libexec/PlistBuddy -c 'Add :Person:weight string 65' info.plist

输出
- 打印字段相应的值:
/usr/libexec/PlistBuddy -c 'Print :Person' info.plist

- 在array中我们还可以根据下标打印某个特定的值
/usr/libexec/PlistBuddy -c 'Print :Application:2' info.plist

删除
- 删除字段相应的值:
/usr/libexec/PlistBuddy -c 'Delete :Version' info.plist

修改
- 修改某个字段相应的值:
/usr/libexec/PlistBuddy -c 'Set :Application:1 string "thi is app1"' info.plist

合并
- 当有两个plist文件的时候,我们可以对其进行合并操作
# 将A.plist 合并到 B.plist中
/usr/libexec/PlistBuddy -c 'Merge A.plist' B.plist

原文链接: http://www.jianshu.com/p/2167f755c47e
参考链接: http://shaojunxiao.com/2017/03/23/使用PlistBuddy修改info-plist文件/?utm_source=tuicool&utm_medium=referral
https://segmentfault.com/a/1190000002423661
PlistBuddy简单使用的更多相关文章
- package_ios
PlistBuddy简单使用 https://www.jianshu.com/p/2167f755c47e xcodebuild 命令 https://www.jianshu.com/p/c32263 ...
- 用PlistBuddy修改Plist文件
Plist文件是以.plist为结尾的文件的总称. 众所周知, Plist在Mac OSX系统中起着举足轻重的作用,就如同Windows里面的Registry一样,系统和程序使用Plist文件来存储自 ...
- PlistBuddy
最近由于工作需要,发现了这么一个小工具. PlistBuddy是一个Mac里的命令行下读写plist文件的工具. 位于/usr/libexec/下,由于这个路径不在默认的PATH里,需要通过绝对路径/ ...
- 【造轮子】打造一个简单的万能Excel读写工具
大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- 哪种缓存效果高?开源一个简单的缓存组件j2cache
背景 现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的.我在项目中也开始接触一些缓存的需求. 开始简单的就用jvm(java托管内存)来做缓存,这样对于单个应用服务 ...
- 在Openfire上弄一个简单的推送系统
推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
随机推荐
- Python 使用Pandas读取Excel的学习笔记
这里介绍Python中使用Pandas读取Excel的方法 一.软件环境: OS:Win7 64位 Python 3.7 二.文件准备 1.项目结构: 2.在当前实验文件夹下建立一个Source文件夹 ...
- Git忽略规则及.gitignore规则不生效的解决办法(转)
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...
- jquery获得/修改html标签
1.添加 meta$("head").append('<meta http-equiv="content-type" content="text ...
- MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
1.添加并验证用户 > use admin> db.addUser("zjx","tsjianxin") #添加用户 > db.auth(&q ...
- php判断一个数组是另一个数组的子集
需求最少的时间复杂度判断$a数组是否是$b数组的子集 // 快速的判断$a数组是否是$b数组的子集$a = array(135,138);$b = array(135,138,137); 实现方法 这 ...
- Efficient algorithms for polyploid haplotype phasing 多倍体单体型分型的有效算法
背景:单倍型的推断,或沿着相同染色体的等位基因序列,是遗传学中的基本问题,并且是许多分析的关键组分,包括混合物图谱,通过下降和插补识别身份区域. 基于测序读数的单倍型定相引起了很多关注. 已经广泛研究 ...
- 购买阿里云的云服务器时选择镜像centos时应该选择哪个版本
购买阿里云的云服务器时选择镜像centos时应该选择哪个版本 方法/步骤首先,我们要清楚的便是每个系统之间的差别,以及在阿里云上的差别:1. Windows1.1) 系统内含正版激活.1.2) 适合于 ...
- 是什么优化让 .NET Core 性能飙升?(转)
欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~ .NET Core(开放源代码,跨平台,x-copy可部署等)有许多令人兴奋的方面,其中最值得称赞的就是其性能了. 感谢所有社区 ...
- awk基础03-分支和循环语句
awk既然是一门解释型语言,则就可以支持如分支语句.循环语句等.今天就来学习一下在awk中的分支和循环语句.如果您有过任何一门编程语言的基础,则下面所讲内容也是很好理解的. 分支语句 if-e ...
- write/read/send/receive函数比较
建立好TCP连接后,就可以把得到的套接字当做文件描述符来使用,由此,联系到网络程序里的基本读写函数,write.read: l write函数: Ssize_t write(int fd,const ...