From b11434ed1255f3c6a967be093e6e193780bc7ed5 Mon Sep 17 00:00:00 2001 From: kaotisk Date: Sat, 2 Mar 2024 01:51:33 +0200 Subject: Removed old ak-cli approach in favor of ak Instead of hardcoding things in a big script we simply search in ak's arguments for appropriate scripts and past the rest of values as arguments to the script found. Running with no arguments *will* be printing all available scripts with --help flag to provide a good overview. --- bin/ak | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 bin/ak (limited to 'bin/ak') diff --git a/bin/ak b/bin/ak new file mode 100755 index 0000000..6a4fc01 --- /dev/null +++ b/bin/ak @@ -0,0 +1,51 @@ +#!/bin/bash + +PROGRAM=$(basename $0) + +logit(){ + ak-logthis "$PROGRAM" "$1" "$2" +} + +if [ $# -eq 0 ] +then + logit "WARNING" "No command given" + ( + find $AK_BINDIR | grep 'ak-' | while read available + do + #subcmd="$(basename $available | cut -d '-' -f 2)" + subcmd="$(basename $available)" + args="-h" + if [ -n "$subcmd" ] + then + echo $subcmd + # $(echo $subcmd) $args + fi + done + ) | sort | uniq + exit 1 +fi + +subcmd="$(echo $* | sed -e 's/ /-/g')" +if [ -f "$AK_BINDIR/ak-$subcmd" ] +then + $(echo ak-$subcmd) + exit $? +else + argc=$# + argv="$*" + counter=1 + while [ $counter -lt $argc ] + do + subcmd="$(echo $argv | cut -d ' ' -f -$counter | sed -e 's/ /\-/g')" + args="$(echo "$argv"| cut -d ' ' -f $(($counter + 1))-)" + if [ -n "$subcmd" ] && [ -f "$AK_BINDIR/ak-$subcmd" ] + then + logit "INFO" "Running: ak-$subcmd with args: $args" + $(echo ak-$subcmd) $args + exit $? + fi + counter=$(($counter + 1)) + done + logit "ERROR" "Unknown subcommand: $*" + exit 1 +fi -- cgit v1.2.3