Skip to content

Instantly share code, notes, and snippets.

@jbadger3
Created November 28, 2022 19:57
Show Gist options
  • Save jbadger3/085c37d2847819e22bd07054596c081b to your computer and use it in GitHub Desktop.
Save jbadger3/085c37d2847819e22bd07054596c081b to your computer and use it in GitHub Desktop.
Example of creating a subprocess in Swift.
import Foundation
let process = Process()
process.executableURL = URL(fileURLWithPath:"/bin/bash")
process.arguments = ["-c", "ls"]
try? process.run()
let standardInputFH = process.standardInput as! FileHandle
let standardOutputFH = process.standardOutput as! FileHandle
let standardErrorFH = process.standardError as! FileHandle
print("PID: \(process.processIdentifier)")
print("stdin FD: \(standardInputFH.fileDescriptor)")
print("stdout FD: \(standardOutputFH.fileDescriptor)")
print("stderr FD: \(standardErrorFH.fileDescriptor)")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment