我想使用Swift
在Process
中运行命令。这是我目前的代码:
process.launchPath = "/bin/sh"
process.arguments = ["symbolicatecrash", "crash.crash"]
但是,这会以sh symbolicatecrash crash.crash
执行命令。我希望此命令以./symbolicatecrash crash.crash
执行。我怎样才能在Swift中实现同样的目标。
我尝试了以下代码(运行时崩溃)
process.launchPath = ""
process.arguments = ["symbolicatecrash", "crash.crash"]
答案 0 :(得分:5)
简单:当你想要完整控制要使用的路径时 - 只需指定一个绝对路径,例如:
process.arguments = ["/usr/bin/symbolicatecrash", "crash.crash"]
或脚本所在的位置。
除此之外:请记住,“./”作为相对路径取决于应用程序上下文中的。
从这个意义上说:你可以看看here来了解如何实际“实现”相对路径 - 然后使用这些知识创建一个匹配所需<的绝对路径em> relative 路径。
但鉴于评论,最“简单”的答案似乎是:
process.launchPath = "usr/bin/env" process.arguments = ["./symbolicatecrash", "crash.crash"] i