MyNixOS website logo
Description

Using Haskell for Unix shell scripting tasks.

A Haskell-library for tasks which are usually done in shell scripts. This includes parsing command line arguments, dealing with paths, some commands for dealing with files, calling external programs and subroutines as separate processes, pipes and redirection of input and output and error handling.

HsShellScript - Haskell for Unix shell scripting tasks

This is HsShellScript, a library which enables you to use Haskell for tasks which are typically done by shell scripts. It requires the Glasgow Haskell Compiler.

More elaborate information can be found on the HsShellScript Homepage.

Status

I've ported HsShellScript to base-4.17.2 (GHC 9.4/9.5). That's the recommended version (as of 2024-04-02). From what I've learnt, I set the bounds of the version of the base package to ">= 4.17.0.0 && < 5".

Installation and Usage

Cabal is being used. You can just import the parts of HsShellScript and build your program with cabal. HsShellScript will be downloaded and installed automatically.

Documentation

The documentation is in the API documentation. There you'll also find some examples.

License

HsShellScript is released under the terms of the GNU Lesser General Public License (LGPL), version 2.1, or any later version.

Author

Volker Wysk [email protected].

Metadata

Version

3.6.4

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows