title: How to run terminal command in swiftUI?
body: <p>I am trying to test out running terminal commands through a macOS app. The command I am trying to run is "mkdir ~/Desktop/test" on a button click, but I think what I have so far is too simple to actually work. Or maybe it's a limitation of xCode not allowing access to my Desktop folder from the simulator?</p>
  
  <p>Below is the code I have. 
  The shell function is simply just a copy-paste of an answer I found here on StackOverflow:</p>
  
  <pre><code>struct ContentView: View {  
  
  @discardableResult func shell(_ command: String) -&gt; (String?, Int32) {
      let task = Process()
      task.launchPath = "/bin/bash"
      task.arguments = ["-c", command]
      let pipe = Pipe()
      task.standardOutput = pipe
      task.standardError = pipe
      task.launch()
      let data = pipe.fileHandleForReading.readDataToEndOfFile()
      let output = String(data: data, encoding: .utf8)
      task.waitUntilExit()
      return (output, task.terminationStatus)
    }
  
    var body: some View {
      VStack{
        Button(action: {
          self.shell("mkdir ~/Desktop/test")
        }) {
          Text("Run Command").font(.body)
        }      
     }.frame(width:500,height:500)    }
  
  }
  </code></pre>
  
  <p>My ultimate goal is to try and run the screenshot command "cd ~/Desktop/ | screencapture  test101.jpg". So if it's possible, would also love to know if i could pop this command into the shell function and also have it run.</p>