Files
2026-08-17 23:19:13 +02:00

51 lines
2.5 KiB
Racket

#lang racket/base
(require "coreutils.rkt"
"extended.rkt"
"racket-tools.rkt")
(provide (struct-out coreutils-command)
coreutils-commands
find-coreutils-command)
(struct coreutils-command (name procedure documentation-term) #:transparent)
(define coreutils-commands
(list
(coreutils-command 'pwd coreutils-pwd 'rash-coreutils-pwd)
(coreutils-command 'ls coreutils-ls 'rash-coreutils-ls)
(coreutils-command 'mkdir coreutils-mkdir 'rash-coreutils-mkdir)
(coreutils-command 'rmdir coreutils-rmdir 'rash-coreutils-rmdir)
(coreutils-command 'rm coreutils-rm 'rash-coreutils-rm)
(coreutils-command 'cp coreutils-cp 'rash-coreutils-cp)
(coreutils-command 'mv coreutils-mv 'rash-coreutils-mv)
(coreutils-command 'cat coreutils-cat 'rash-coreutils-cat)
(coreutils-command 'touch coreutils-touch 'rash-coreutils-touch)
(coreutils-command 'echo coreutils-echo 'rash-coreutils-echo)
(coreutils-command 'which coreutils-which 'rash-coreutils-which)
(coreutils-command 'head coreutils-head 'rash-coreutils-head)
(coreutils-command 'tail coreutils-tail 'rash-coreutils-tail)
(coreutils-command 'wc coreutils-wc 'rash-coreutils-wc)
(coreutils-command 'sort coreutils-sort 'rash-coreutils-sort)
(coreutils-command 'uniq coreutils-uniq 'rash-coreutils-uniq)
(coreutils-command 'cut coreutils-cut 'rash-coreutils-cut)
(coreutils-command 'tee coreutils-tee 'rash-coreutils-tee)
(coreutils-command 'tr coreutils-tr 'rash-coreutils-tr)
(coreutils-command 'basename coreutils-basename 'rash-coreutils-basename)
(coreutils-command 'dirname coreutils-dirname 'rash-coreutils-dirname)
(coreutils-command 'realpath coreutils-realpath 'rash-coreutils-realpath)
(coreutils-command 'readlink coreutils-readlink 'rash-coreutils-readlink)
(coreutils-command 'stat coreutils-stat 'rash-coreutils-stat)
(coreutils-command 'du coreutils-du 'rash-coreutils-du)
(coreutils-command 'df coreutils-df 'rash-coreutils-df)
(coreutils-command 'mktemp coreutils-mktemp 'rash-coreutils-mktemp)
(coreutils-command 'printenv coreutils-printenv 'rash-coreutils-printenv)
(coreutils-command 'env coreutils-env 'rash-coreutils-env)
(coreutils-command 'date coreutils-date 'rash-coreutils-date)
(coreutils-command 'raco coreutils-raco 'rash-coreutils-raco)))
(define (find-coreutils-command name)
(for/first ([command (in-list coreutils-commands)]
#:when (eq? name (coreutils-command-name command)))
command))