0
与えられたファイル名の正規表現にマッチする多くのファイルに対してシェルコマンドを実行したいと思います。私は、引数でシェルコマンドを実行し、このコードスニペットを見つけました:Swiftのパターンでシェルコマンドを実行してください
func shell(_ arguments: [String] = []) -> String {
let task = Process()
task.launchPath = "/usr/bin/env"
task.arguments = arguments
let pipe = Pipe()
task.standardOutput = pipe
task.launch()
let data = pipe.fileHandleForReading.readDataToEndOfFile()
let output = String(data: data, encoding: .utf8) ?? "unknown"
return output
}
それは素晴らしい実行されますが、それはパラメータを解決しません:
shell(["ls", "~/Desktop/*.txt"])
は*
txt
すべてのファイルを解決しません、それは*.txt
というファイルのみを処理しようとします。 Process
に設定する必要があるオプションはありますか?
ご協力いただきありがとうございます。