端末コマンドを実行してFinderに隠しファイルを表示しようとしています。問題はdefaults write com.apple.finder AppleShowAllFiles TRUE
に複数の起動パスがあるように見えることです。ターミナルでwhich
コマンドを実行してから、実行しようとしているコマンドを実行すると、/usr/bin/defaults
、/usr/bin/write
、および/usr/bin/TRUE
の3つのパスが表示されます。 .launchPath
は配列を受け入れないため、コマンドの起動パスとして3つすべてを設定することはできません。複数の起動パスを使用して端末コマンドswfitを実行する
このコマンドはどのように実行できますか?
編集:問題は、引数を別々の文字列に分割していないことでした。このコードの動作:
@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()
}
ところで、[XtraFinder](https://www.trankynam.com/xtrafinder/)をすることができますファインダーツールバーにボタンを追加すると、隠しファイルの表示/非表示を切り替えることができます。 – Alexander
スワイプコードを追加してタスクを作成することはできますか?それ以外の場合はスクロールしません。 – muescha