2db569c9b88918484fbb5fa692e4b94afc6adb19
SwiftShell
A Swift module for shell scripting.
Installation
- In the Terminal, go to where you want to download SwiftShell.
- Run
git clone https://github.com/kareman/SwiftShell.git
cd SwiftShell
- Copy/link
Div/swiftshellto your bin folder or anywhere in your PATH. - To install the framework, either:
- run
xcodebuild installfrom the project's root folder. This will install the SwiftShell framework in ~/Library/Frameworks. - or run
xcodebuildand copy the resulting framework from the build folder to your library folder of choice. If that is not "~/Library/Frameworks", "/Library/Frameworks" or a folder mentioned in the $DYLD_FRAMEWORK_PATH environment variable then you need to add your folder to $DYLD_FRAMEWORK_PATH.
- run
Examples
Print standard input with line numbers
#!/usr/bin/env swiftshell
import SwiftShell
var i = 1
for line in standardinput.lines() {
print("line \(i++): ")
println(line)
}
Launch with e.g. ls | print_linenumbers.swift
List all executables in PATH
#!/usr/bin/env swiftshell
import SwiftShell
let directories = environment["PATH"]!.split(":")
for directory in directories {
run("find \"\(directory)\" -type f -perm +ugo+x -print") |> standardoutput
}
Pipe several commands together
#!/usr/bin/env swiftshell
import SwiftShell
run("echo this is streamed") |> run("wc -w") |> standardoutput
LICENSE
Copyright (c) 2014 Kåre Morstøl (NotTooBad Software). All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
Description
Languages
Swift
96.1%
Shell
2.9%
Ruby
1%