Skip to content

Instantly share code, notes, and snippets.

@shanenoi
Created October 15, 2021 13:11
Show Gist options
  • Save shanenoi/03ef593cd413ff2e6cea7b34fbee793a to your computer and use it in GitHub Desktop.
Save shanenoi/03ef593cd413ff2e6cea7b34fbee793a to your computer and use it in GitHub Desktop.
#!/bin/sh
_ls() { ls -la $1; }
_cat() { cat $@; }
_cd() { cd $1; }
_mkdir() { mkdir $1; }
_pwd() { pwd $1; }
_cp() { cp -r $1 $2; }
_exit() { exit $1; }
declare -A COMMANDS=(
["cd"]=_cd
["ls"]=_ls
["cat"]=_cat
["cd"]=_cd
["mkdir"]=_mkdir
["pwd"]=_pwd
["cp"]=_cp
["exit"]=_exit
)
main() {
while :
do
echo -n "->> "
IFS=' ' read -ra array
params=("${array[@]:1}")
if [ ${#array} -eq 0 ]; then
continue
elif [ "${COMMANDS[${array[0]}]}" = "" ]; then
echo "${array[0]} command not found"
fi
${COMMANDS[${array[0]}]} ${params[@]}
done
}
main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment