mirror of
https://github.com/nicoverbruggen/NVAppUpdater.git
synced 2025-08-07 17:50:07 +02:00
41 lines
942 B
Swift
41 lines
942 B
Swift
//
|
|
// Created by Nico Verbruggen on 26/05/2024.
|
|
// Copyright © 2024 Nico Verbruggen. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
/**
|
|
Run a simple blocking Shell command on the user's own system.
|
|
*/
|
|
func system(_ command: String) -> String {
|
|
let task = Process()
|
|
task.launchPath = "/bin/sh"
|
|
task.arguments = ["-c", command]
|
|
|
|
let pipe = Pipe()
|
|
task.standardOutput = pipe
|
|
task.launch()
|
|
|
|
let data = pipe.fileHandleForReading.readDataToEndOfFile()
|
|
let output: String = NSString(data: data, encoding: String.Encoding.utf8.rawValue)! as String
|
|
|
|
return output
|
|
}
|
|
|
|
/**
|
|
Same as the `system` command, but does not return the output.
|
|
*/
|
|
func system_quiet(_ command: String) {
|
|
let task = Process()
|
|
task.launchPath = "/bin/sh"
|
|
task.arguments = ["-c", command]
|
|
|
|
let pipe = Pipe()
|
|
task.standardOutput = pipe
|
|
task.launch()
|
|
|
|
_ = pipe.fileHandleForReading.readDataToEndOfFile()
|
|
return
|
|
}
|