我正在尝试在我开发的Mac应用程序中运行终端命令。该终端命令是:
sudo sysctl -w net.inet.tcp.delayed_ack=0
我已经尝试使用NSTask,但似乎每次都做错了什么。
我只想运行这个命令并打印输出。 感谢您的关注。
顺便说一句,这是我当前代码的样子(感谢您的回复):
let task = NSTask()
task.launchPath = "/usr/sbin/sysctl"
task.arguments = ["-w", "net.inet.tcp.delayed_ack=0"]
let pipe = NSPipe()
task.standardOutput = pipe
task.standardError = pipe
task.launch()
task.waitUntilExit()
let data = pipe.fileHandleForReading.readDataToEndOfFile()
let output: String = NSString(data: data, encoding: NSUTF8StringEncoding) as! String
我在输出中收到以下消息:
net.inet.tcp.delayed_ack: 3
sysctl: net.inet.tcp.delayed_ack=0: 操作不允许