我正在编写控制台程序。我想从该程序启动vim,等到用户退出并继续执行。
let editorTask = NSTask()
editorTask.currentDirectoryPath = "/Users/vbezhenar/Documents"
editorTask.launchPath = "/usr/bin/vim"
editorTask.arguments = ["/Users/vbezhenar/Documents/file"]
editorTask.launch()
editorTask.waitUntilExit()
我从终端运行这个程序。我可以在另一个终端看到用ps aux | grep vim运行vim,但是我没有看到任何vim用户界面。控制台只是挂起,直到我按下" Ctrl + C"。
似乎stdout或stdin存在问题,但文档明确指出默认情况下这些文件描述符是从启动过程继承的,所以不应该有任何问题。我不会改变环境,所以它也应该继承。
我尝试启动" / bin / sh",它也没有用。