Skip to content

proxypoke/gotils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GOTILS(7) Manual Page

NAME

gotils - the Go coreutils

DESCRIPTION

This is an attempt to implement the coreutils (not necessarily GNU) in Go.

PROGRESS

There are currently implementations for the following coreutils:

cat

Partial implementation. No flags yet.

cp

Basic implementation.

echo

Full implementation with all flags (except --version).

false

Done.

ln

Basic implementation, can do hard and soft links. No further flags yet.

mkdir

Full implementation with all flags (except --version).

mv

Basic implementation.

rm & rmdir

rm and rmdir are implemented as a single utility, rm. First basic implementation.

true

Done.

wc

Implements byte, char, word, and line count.

TODO

This is an autogenerated list using the following script (Arch GNU/Linux):

pacman -Qql coreutils
    | egrep "/bin/[^\s]"
    | sed "s#*./##"

This list assumes GNU coreutils, therefore it is temporary and might change in the future.

  • chgrp

  • chmod

  • chown

  • date

  • dd

  • df

  • ls

  • mknod

  • pwd

  • stty

  • sync

  • uname

  • [

  • base64

  • basename

  • chcon

  • chgrp

  • chmod

  • chown

  • chroot

  • cksum

  • comm

  • csplit

  • cut

  • date

  • dd

  • df

  • dircolors

  • dirname

  • du

  • env

  • expand

  • expr

  • factor

  • fmt

  • fold

  • head

  • hostid

  • id

  • install

  • join

  • link

  • ln

  • logname

  • ls

  • md5sum

  • mkfifo

  • mknod

  • mktemp

  • nice

  • nl

  • nohup

  • nproc

  • od

  • paste

  • pathchk

  • pinky

  • pr

  • printenv

  • printf

  • ptx

  • pwd

  • readlink

  • realpath

  • rm

  • rmdir

  • runcon

  • seq

  • sha1sum

  • sha224sum

  • sha256sum

  • sha384sum

  • sha512sum

  • shred

  • shuf

  • sleep

  • sort

  • split

  • stat

  • stdbuf

  • stty

  • sum

  • sync

  • tac

  • tail

  • tee

  • test

  • timeout

  • touch

  • tr

  • true

  • truncate

  • tsort

  • tty

  • uname

  • unexpand

  • uniq

  • unlink

  • users

  • who

  • whoami

  • yes

FREEBSD

Some utils from FreeBSD which I want to implement, too:

  • apply

  • shuffle

About

implementing the coreutils in Go - one boring evening at a time. why? because I can!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages