Skip to content
This repository has been archived by the owner on Oct 5, 2024. It is now read-only.

g1eng/giosh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

Circle CI codecov

giosh (generic IO shell) is a multipurpose command line shell written in Go.

giosh is not:

  • a POSIX compliant shell
  • a shell language with multi-line lexical scope
  • a virtual machine with a new (environmental) variable declaration mechanism

Supported features

  • Command invokation with PATH resolving
  • pipe

Usage

  1. Simply invoke it. You can use giosh with interactive mode.
$ giosh
@G[1]> ls -l | grep m | sed -r -e s/.+[[:blank:]]//g
README.md
cmd
main.go
  1. Read giosh script
$ giosh some_script
  1. Read an oneliner from the standard input (Standard input for giosh must be an oneliner)
$ awesome_script | awesome_command | giosh

Limitation

At now, giosh is released under limitations (really so limited in the function).

Following mechanisms are not supported:

  • comment line
  • escape character \
  • arrow keys and command history
  • redirection with file descriptor
  • hear strings or hear document
  • variable declaration
  • variable reference (env value is not directly available)
  • variable expansion and command replacement
  • background jobs (&)
  • builtin commands

Authors

Suzume Nomura @g1eng

Okadarien Saru -

About

a POSIX INCOMPLIENT shell, written in go

Resources

License

Stars

Watchers

Forks

Packages

No packages published