swift - 当根进程写入值时,在哪里可以找到 userdefaults.plist 文件?
问题描述
我有一个 CLI 可执行文件(在根上下文中运行)。它的唯一目的是写入用户默认值并读取用户默认值,它的工作正常,但我无法找到此过程创建/修改的 plist 文件。我尝试在用户上下文中运行相同的进程,并且能够在 ~/Library/Preference/ServiceCheckOne.plist 中找到它创建的 plist 文件
UserDefaults.init(suiteName: 'ServiceCheckOne')?.set(100, forKey: 'check1')
let value = UserDefaults.init(suiteName: suiteName)?.integer(forKey: key)!
使用此功能后,我得到 value = 100
我从这些答案和构建中提到的所有位置搜索 plist
Mac 应用程序的 NSUserDefaults 数据存储在哪里?
定位命令也没有帮助。
我检查了最近修改的文件仍然找不到文件。
简而言之
,当 root 进程使用您的 userDefaults.set 时,需要帮助定位 ServiceCheckOne.plist 文件。\
还是因为缓存默认值和文件实际上不存在而获得价值?谢谢 Xcode 12.3 MacOs 10.15 试过默认读 | grep ServiceCheckOne 在这里也没有命中
解决方案
推荐阅读
- rust - 如何在不单独分配堆上的每个项目的情况下创建拥有的特征对象的列表?
- android - Flutter:如何在 Flutter 中使图像的某些区域透明?
- linux - grep pdf文件中的内容并将其部分写入变量
- javascript - 如何使用javascript从arebic内容中删除空间
- c# - .NET Core 3.1 Worker 服务 - 在发布时设置 EnvironmentName
- javascript - 根据属性值删除对象数组中的重复项
- c# - 如何将所有双精度和字符串数据类型隔离到实例集合中
- sublimetext3 - 在所有具有相同名称的文件中搜索特定文本 [Sublime text 3]
- java - 在 Java 中检查三角形类型
- java - 如何获取从 perl 脚本传递到 java 文件的参数