< filename
sintaks adalah fitur yang disediakan oleh shell, bukan sesuatu yang pernah ditangani oleh program itu sendiri.
Cara yang tepat untuk menangani ini adalah dengan membuat FileHandle
untuk membaca dari dumpFile.sql
dan kemudian atur FileHandle
itu sebagai standardInput
properti dari Process
.
Sebagai catatan tambahan, saya tidak tahu mengapa Anda menggunakan /usr/bin/env
sebagai jalur peluncuran Anda, karena Anda tidak mengandalkan pencarian PATH atau menyetel variabel lingkungan apa pun.
let input = try FileHandle(forReadingFrom: URL(fileURLWithPath: "dumpFile.sql"))
let task = Process()
task.launchPath = "/usr/bin/mysql"
task.arguments = ["-h", "theHost", "-P", "3306", "-u", "root", "-pTheInlinePassword", "example_database"]
task.standardInput = input
task.launch()