用于从 Swift 代码运行 shell 脚本和其他可执行文件的库。
该库以 Swift Package 的形式分发。
// in your Package.swift, add package dependency:
.package(url: "https://github.com/darrarski/swift-shell.git", from: "0.1.0"),
// and add the library as a dependency to your target:
.product(name: "SwiftShell", package: "swift-shell"),
代码中包含了文档注释,解释了每个变量和函数的用途。 下面描述的示例和库的单元测试解释了如何使用它。 您还可以查看自动生成的托管在 SwiftPackageIndex 上的文档。
运行 bash 脚本,发送输入,并检索脚本的输出
let process = ShellProcess(.bash("IFS= read -r NAME; echo Hello, $NAME!"))
try await process.run()
try await process.send(input: "Swift\n".data(using: .utf8)!)
let output = try await process.output()!
print(String(data: output, encoding: .utf8)!) // Hello, Swift!
查看此存储库中包含的示例
SwiftShell.xcworkspace
。SwiftShell
scheme 来构建和测试库。如果您喜欢我的工作,我很乐意听到您的反馈。 我也可以帮助您在您的应用程序中应用此存储库中使用的任何解决方案! 请随时与我联系,或者如果您只是想说“谢谢”,您可以请我喝一杯咖啡。
版权所有 © 2024 Dariusz Rybicki Darrarski
许可协议:MIT