Я ломал голову над тем, как создать и записать список для определенного каталога папок в MacOS.В моем случае это папка LaunchDaemons в / Library.Я знаю, как создать plist, но это запись в папку LaunchDaemons, с которой у меня возникают проблемы.Этот код ниже, насколько я понимаю, предназначен для песочницы, но как мне сделать это вне песочницы?Приветствия
let fileManager = FileManager.default
let documentDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as String
let path = documentDirectory.appending("test.plist")
Я добавил код с помощью, которую я получил, и не имею ошибок, но он ничего не записывает в папку.Вот код:
let libraryDirectory = try! FileManager.default.url(for: .libraryDirectory, in: .localDomainMask, appropriateFor: nil, create: false)
let launchDaemonsFolder = libraryDirectory.appendingPathComponent("LaunchDaemons/test.plist")
if FileManager.default.fileExists(atPath: launchDaemonsFolder.path) {
print(launchDaemonsFolder)
let plistDictionary : [String: Any] = [
"ExitTimeOut": 600,
"Label": "BOOT.SHUTDOWN.SERVICE",
"ProgramArguments": ["/test.sh"] as Array,
"RunAtLoad": false,
"WorkingDirectory": "/"
]
let dictionaryResult = NSDictionary(dictionary: plistDictionary)
let fileWritten = dictionaryResult.write(to: launchDaemonsFolder, atomically: true)
print("is the file created: \(fileWritten)")
} else {
print("File Exists")
}