Access local shell as well as remote over SSH for Swift NIO applications
.package(url:"https://github.com/Einstore/ShellKit.git", from:"1.0.0")letshell=tryShell(.local, on: eventLoop)letfutureResponse= shell.run(bash:"ls -a").map{ output inprint(output)return output
}letshell=tryShell(.ssh(
host:"1292.168.1.2",
username:"root",
password:"sup3rS3cr3t"),
on: eventLoop
)letfutureResponse= shell.run(bash:"ls -a")Other means of SSH authentication are available!
leteventLoop=EmbeddedEventLoop()letshell=tryShell(.local, on: eventLoop)letfutureResponse= shell.run(bash:"cd /tmp/ ; pwd").map{ output inprint(output)return output
}.flatMapError{ error inprint(error)return error.localizedDescription
}letout:String=try futureResponse.wait()print(out)Access commands through
Example:
shell.cmd.pwd().map{ currentPath inprint(currentPath)}Discover more commands under
shell.cmdandshell.cmd.install
Ondrej Rafaj @rafiki270
MIT; Copyright 2019 - Einstore