objective-c - 从 Objective-C 运行 shell 脚本

标签 objective-c bash shell shebang

我正在尝试运行 NSTextView 中的 shell 脚本。我知道我可以使用 NSTask 来执行此操作,但我想知道最好的方法是什么,如果脚本仅存在于内存( TextView )中而不存在于磁盘上。

我应该暂时将它写入磁盘还是以某种方式直接将其作为字符串运行?

我传递给 NSTask 的参数是什么?我是否必须提取 shebang 行并将其作为 launchPath 传递?

最佳答案

您可以将/bin/bash 作为您的NSTask 执行,并将setStandardInput 设置为NSPipe。然后通过 fileHandleForWriting 将包含脚本的 NSString 写入管道,以避免在磁盘上创建文件。

关于objective-c - 从 Objective-C 运行 shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13733456/

相关文章:

ios - 什么时候不为 objective-c 中的委托(delegate)使用协议(protocol)?

linux - 将指定文件夹中的所有文件向上移动一个目录

linux - 在 Unix 上计算每行/字段的字符出现次数

bash - 在 *nix 环境中以电子邮件地址作为名称创建文件

ios - 如何在 Storyboard 中将自定义字体设置为 UILabel

ios - 从全局范围访问 super

ios - 您可以使用 Mapkit 引用 Apple map 中的地点吗?

bash - 具有输入和管理权限的 Applescript 执行 Shell

json - 使用 jq 将 JSON 转换为 CSV

C++ 显示一个图标覆盖所有空文件夹