I'm trying show hidden files in Finder by running a terminal command. The problem is it looks like defaults write com.apple.finder AppleShowAllFiles TRUE has multiple launch paths. When I run the which command in terminal followed by the command I'm trying to run, it gives me three paths: /usr/bin/defaults, /usr/bin/write, and /usr/bin/TRUE. I can't set all three as launch paths for the command because .launchPath doesn't accept an array.
How can I run this command?
edit: The problem was I wasn't separating the arguments into separate strings. This code works:
@IBAction func showAllFiles(_ sender: NSMenuItem) {
let task = Process()
task.launchPath = "/usr/bin/defaults"
task.arguments = ["write", "com.apple.finder", "AppleShowAllFiles", "TRUE"]
task.launch()
task.waitUntilExit()
}