simple-cmd: Simple String-based process commands

[ bsd3, library, system ] [ Propose Tags ]

Simple wrappers over System.Process (readProcess, readProcessWithExitCode, rawSystem, and createProcess). The idea is to provide some common idioms for calling out to commands from programs. For more advanced shell-scripting or streaming use turtle, shelly, command, etc.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.1, 0.1.2, 0.1.3, 0.1.3.1, 0.1.4, 0.2.0, 0.2.0.1, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.2.7
Change log ChangeLog.md
Dependencies base (<5), directory, filepath, process (>=1.4.3.0), unix [details]
License BSD-3-Clause
Copyright Jens Petersen <juhpetersen@gmail.com>
Author Jens Petersen
Maintainer juhpetersen@gmail.com
Revised Revision 1 made by JensPetersen at 2019-06-04T08:54:09Z
Category System
Source repo head: git clone https://github.com/juhp/simple-cmd
Uploaded by JensPetersen at 2019-06-03T18:37:02Z
Distributions Fedora:0.2.7, LTSHaskell:0.2.7, NixOS:0.2.7, Stackage:0.2.7
Reverse Dependencies 2 direct, 1 indirect [details]
Downloads 6287 total (55 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-06-03 [all 1 reports]

Readme for simple-cmd-0.2.0

[back to package description]

Build Status Hackage

simple-cmd

Some simple String wrappers of readProcess, readProcessWithExitCode, rawSystem from the Haskell process library.

Usage

import SimpleCmd
cmd_ :: String -> [String] -> IO ()

outputs to stdout. For example

cmd_ "echo" ["Hello"]
cmd_ "git" ["clone", url]

This can shortened to git_ "clone" [url].

cmd :: String -> [String] -> IO String

returns stdout as a String. eg

date <- cmd "date" []

There are also cmdBool, cmdMaybe, cmdList, shell, and others.

Simple pipes are also supported:

pipe_ ("echo",["hello"]) ("grep",["ello"])

Other examples:

gitBranch :: IO String
grep_ pat file :: IO Bool
sudo_ c args :: IO ()

See the library documentation for more details.