MacOS使用Process执行脚本
2019-07-09 本文已影响0人
春风十月柔情
一、创建脚本文件
- 创建.command文件,我这里命名为script.command,然后将这个文件添加到工程中。
- 使用命令行 cd 到这个文件的文件夹,执行:chmod +x script.command
- 在这个文件加入我们想要的命令,如:
#!/bin/sh
# 这里cd到用户目录,然后打印这个目录下的文件
cd /Users/wuyinfeng
ls
# 打印传入的参数
echo ${1}
echo ${2}
二、使用Process
- 在OC语言中是NSTask,这里使用swift语言:
let taskQueue = DispatchQueue.global(qos: DispatchQoS.QoSClass.background)
taskQueue.async {
// 获取脚本地址
guard let path = Bundle.main.path(forResource: "script", ofType: "command") else {
print("Unable to locate script.command")
return
}
// 初始化任务
let buildTask = Process()
buildTask.launchPath = path
// 传入参数
buildTask.arguments = ["参数测试1~~~", "参数测试2~~~"]
// 任务完成回调
buildTask.terminationHandler = { task in
DispatchQueue.main.async(execute: {
print("任务结束")
})
}
// 开始执行任务
buildTask.launch()
// 等任务结束释放内存
buildTask.waitUntilExit()
}
- 查看控制台log:
Applications Downloads Movies Public 简书
Desktop Library Music PythonStudy
Documents MacOSProjects Pictures WeChatProjects
参数测试1~~~
参数测试2~~~