From 76f7ff1f56cf5eebc91549277992ccf92333bdef Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Fri, 26 Jul 2019 20:53:33 -0400 Subject: rename shell scripts to *.sh, remove execute bit, let make rename and enable execution --- Makefile | 3 ++- arch | 1 - arch.sh | 1 + base64 | 1 - base64.sh | 1 + dir | 1 - dir.sh | 1 + factor | 31 ------------------------------- factor.sh | 31 +++++++++++++++++++++++++++++++ nproc | 2 -- nproc.sh | 2 ++ printenv | 7 ------- printenv.sh | 7 +++++++ readlink | 7 ------- readlink.sh | 7 +++++++ seq | 25 ------------------------- seq.sh | 25 +++++++++++++++++++++++++ stdbuf | 7 ------- stdbuf.sh | 7 +++++++ tac | 12 ------------ tac.sh | 12 ++++++++++++ uptime | 5 ----- uptime.sh | 5 +++++ users | 1 - users.sh | 1 + vdir | 1 - vdir.sh | 1 + yes | 4 ---- yes.sh | 4 ++++ 29 files changed, 107 insertions(+), 106 deletions(-) delete mode 100755 arch create mode 100644 arch.sh delete mode 100755 base64 create mode 100644 base64.sh delete mode 100755 dir create mode 100644 dir.sh delete mode 100755 factor create mode 100644 factor.sh delete mode 100755 nproc create mode 100644 nproc.sh delete mode 100755 printenv create mode 100644 printenv.sh delete mode 100755 readlink create mode 100644 readlink.sh delete mode 100755 seq create mode 100644 seq.sh delete mode 100755 stdbuf create mode 100644 stdbuf.sh delete mode 100755 tac create mode 100644 tac.sh delete mode 100755 uptime create mode 100644 uptime.sh delete mode 100755 users create mode 100644 users.sh delete mode 100755 vdir create mode 100644 vdir.sh delete mode 100755 yes create mode 100644 yes.sh diff --git a/Makefile b/Makefile index 46557c1..1238b26 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ .POSIX: -PROGRAMS=hostid mktemp sync +PROGRAMS=arch base64 factor hostid mktemp nproc printenv readlink \ + seq stdbuf sync tac uptime users vdir yes all: $(PROGRAMS) diff --git a/arch b/arch deleted file mode 100755 index 6ff1fb5..0000000 --- a/arch +++ /dev/null @@ -1 +0,0 @@ -exec uname -m diff --git a/arch.sh b/arch.sh new file mode 100644 index 0000000..6ff1fb5 --- /dev/null +++ b/arch.sh @@ -0,0 +1 @@ +exec uname -m diff --git a/base64 b/base64 deleted file mode 100755 index 60f09d2..0000000 --- a/base64 +++ /dev/null @@ -1 +0,0 @@ -exec uudecode -m "${1+$@}" diff --git a/base64.sh b/base64.sh new file mode 100644 index 0000000..60f09d2 --- /dev/null +++ b/base64.sh @@ -0,0 +1 @@ +exec uudecode -m "${1+$@}" diff --git a/dir b/dir deleted file mode 100755 index 4507cf5..0000000 --- a/dir +++ /dev/null @@ -1 +0,0 @@ -exec ls -C "$@" diff --git a/dir.sh b/dir.sh new file mode 100644 index 0000000..4507cf5 --- /dev/null +++ b/dir.sh @@ -0,0 +1 @@ +exec ls -C "$@" diff --git a/factor b/factor deleted file mode 100755 index ab6a72e..0000000 --- a/factor +++ /dev/null @@ -1,31 +0,0 @@ -factor() { - n=$1 - f=2 - - printf '%d:' $n - - while [ $n -gt $f ]; do - if [ $((n % f)) -eq 0 ]; then - printf ' %d' $f - n=$((n / f)) - else - f=$((f + 1)) - fi - done - - if [ $n -gt 1 ]; then - printf ' %d' $n - fi - - printf '\n' -} - -if [ -z "$*" ]; then - while IFS=\n read -r i; do - factor $i - done -else - for i in $*; do - factor $i - done -fi diff --git a/factor.sh b/factor.sh new file mode 100644 index 0000000..ab6a72e --- /dev/null +++ b/factor.sh @@ -0,0 +1,31 @@ +factor() { + n=$1 + f=2 + + printf '%d:' $n + + while [ $n -gt $f ]; do + if [ $((n % f)) -eq 0 ]; then + printf ' %d' $f + n=$((n / f)) + else + f=$((f + 1)) + fi + done + + if [ $n -gt 1 ]; then + printf ' %d' $n + fi + + printf '\n' +} + +if [ -z "$*" ]; then + while IFS=\n read -r i; do + factor $i + done +else + for i in $*; do + factor $i + done +fi diff --git a/nproc b/nproc deleted file mode 100755 index f70e2ca..0000000 --- a/nproc +++ /dev/null @@ -1,2 +0,0 @@ -# This is not implementable portably, so just always say one. -echo 1 diff --git a/nproc.sh b/nproc.sh new file mode 100644 index 0000000..f70e2ca --- /dev/null +++ b/nproc.sh @@ -0,0 +1,2 @@ +# This is not implementable portably, so just always say one. +echo 1 diff --git a/printenv b/printenv deleted file mode 100755 index 1ec574a..0000000 --- a/printenv +++ /dev/null @@ -1,7 +0,0 @@ -if [ -n "$*" ]; then - for i in $*; do - printf '%s=%s\n' "${i}" "${$i}" - done -else - env -fi diff --git a/printenv.sh b/printenv.sh new file mode 100644 index 0000000..1ec574a --- /dev/null +++ b/printenv.sh @@ -0,0 +1,7 @@ +if [ -n "$*" ]; then + for i in $*; do + printf '%s=%s\n' "${i}" "${$i}" + done +else + env +fi diff --git a/readlink b/readlink deleted file mode 100755 index 5bf2be5..0000000 --- a/readlink +++ /dev/null @@ -1,7 +0,0 @@ -readlink() { - ls -l "$1" | awk -F' -> ' '{print $2}' -} - -for i in "$@"; do - readlink $i -done diff --git a/readlink.sh b/readlink.sh new file mode 100644 index 0000000..5bf2be5 --- /dev/null +++ b/readlink.sh @@ -0,0 +1,7 @@ +readlink() { + ls -l "$1" | awk -F' -> ' '{print $2}' +} + +for i in "$@"; do + readlink $i +done diff --git a/seq b/seq deleted file mode 100755 index acb68d5..0000000 --- a/seq +++ /dev/null @@ -1,25 +0,0 @@ -FIRST=1 -INCREMENT=1 - -if [ $# -eq 3 ]; then - FIRST=$1 - INCREMENT=$2 - LAST=$3 -elif [ $# -eq 2 ]; then - FIRST=$1 - LAST=$2; -elif [ $# -eq 1 ]; then - LAST=$1 -else - printf 'use one of:\n' - printf '\tseq LAST\n' - printf '\tseq FIRST LAST\n' - printf '\tseq FIRST INCREMENT LAST\n' - exit 1 -fi - -i=$FIRST -while [ $i -lt $LAST ]; do - printf '%d\n' $i - i=$((i + INCREMENT)) -done diff --git a/seq.sh b/seq.sh new file mode 100644 index 0000000..acb68d5 --- /dev/null +++ b/seq.sh @@ -0,0 +1,25 @@ +FIRST=1 +INCREMENT=1 + +if [ $# -eq 3 ]; then + FIRST=$1 + INCREMENT=$2 + LAST=$3 +elif [ $# -eq 2 ]; then + FIRST=$1 + LAST=$2; +elif [ $# -eq 1 ]; then + LAST=$1 +else + printf 'use one of:\n' + printf '\tseq LAST\n' + printf '\tseq FIRST LAST\n' + printf '\tseq FIRST INCREMENT LAST\n' + exit 1 +fi + +i=$FIRST +while [ $i -lt $LAST ]; do + printf '%d\n' $i + i=$((i + INCREMENT)) +done diff --git a/stdbuf b/stdbuf deleted file mode 100755 index a2f6a72..0000000 --- a/stdbuf +++ /dev/null @@ -1,7 +0,0 @@ -# This cannot be portably replicated, as it depends on LD_PRELOAD tricks -# interjecting modified versions of stdin, stdout, and stderr with their -# buffering modes set manually. - -# parse options i:o:e: - -exec "$@" diff --git a/stdbuf.sh b/stdbuf.sh new file mode 100644 index 0000000..a2f6a72 --- /dev/null +++ b/stdbuf.sh @@ -0,0 +1,7 @@ +# This cannot be portably replicated, as it depends on LD_PRELOAD tricks +# interjecting modified versions of stdin, stdout, and stderr with their +# buffering modes set manually. + +# parse options i:o:e: + +exec "$@" diff --git a/tac b/tac deleted file mode 100755 index d0f1504..0000000 --- a/tac +++ /dev/null @@ -1,12 +0,0 @@ -cat "$@" | awk "$(tail -n +3 $0)" # TODO: reverse order of arguments -exit $? - -{ - lines[NR] = $0; -} - -END { - for (i = NR; i > 0; i--) { - print lines[i] - } -} diff --git a/tac.sh b/tac.sh new file mode 100644 index 0000000..d0f1504 --- /dev/null +++ b/tac.sh @@ -0,0 +1,12 @@ +cat "$@" | awk "$(tail -n +3 $0)" # TODO: reverse order of arguments +exit $? + +{ + lines[NR] = $0; +} + +END { + for (i = NR; i > 0; i--) { + print lines[i] + } +} diff --git a/uptime b/uptime deleted file mode 100755 index e78ad4a..0000000 --- a/uptime +++ /dev/null @@ -1,5 +0,0 @@ -printf ' %s' "$(date +%T)" -printf ' up since %s,' "$(who -b | sed -e s/^.*boot[[:space:]]//)" -printf ' %2d users' $(who | wc -l) -# load average -printf '\n' diff --git a/uptime.sh b/uptime.sh new file mode 100644 index 0000000..e78ad4a --- /dev/null +++ b/uptime.sh @@ -0,0 +1,5 @@ +printf ' %s' "$(date +%T)" +printf ' up since %s,' "$(who -b | sed -e s/^.*boot[[:space:]]//)" +printf ' %2d users' $(who | wc -l) +# load average +printf '\n' diff --git a/users b/users deleted file mode 100755 index 516cedb..0000000 --- a/users +++ /dev/null @@ -1 +0,0 @@ -exec who -q "$@" diff --git a/users.sh b/users.sh new file mode 100644 index 0000000..516cedb --- /dev/null +++ b/users.sh @@ -0,0 +1 @@ +exec who -q "$@" diff --git a/vdir b/vdir deleted file mode 100755 index 877b868..0000000 --- a/vdir +++ /dev/null @@ -1 +0,0 @@ -exec ls -l "$@" diff --git a/vdir.sh b/vdir.sh new file mode 100644 index 0000000..877b868 --- /dev/null +++ b/vdir.sh @@ -0,0 +1 @@ +exec ls -l "$@" diff --git a/yes b/yes deleted file mode 100755 index 01c755f..0000000 --- a/yes +++ /dev/null @@ -1,4 +0,0 @@ -ARG=${*-y} -while true; do - printf '%s\n' "${ARG}" -done diff --git a/yes.sh b/yes.sh new file mode 100644 index 0000000..01c755f --- /dev/null +++ b/yes.sh @@ -0,0 +1,4 @@ +ARG=${*-y} +while true; do + printf '%s\n' "${ARG}" +done -- cgit v1.2.1