34 lines
679 B
Bash
Executable File
34 lines
679 B
Bash
Executable File
#!/bin/sh
|
|
|
|
PROGNAME=${0##*/}
|
|
VERSION="0.0.1"
|
|
|
|
proto="$(echo $1 | grep :// | sed -e's,^\(.*://\).*,\1,g')"
|
|
url=$(echo $1 | sed -e 's,$proto,,g')
|
|
host=$(echo "$url" | sed -e 's|^[^/]*//||' -e 's|/.*$||')
|
|
path="$(echo $url | grep / | cut -d/ -f2-)"
|
|
port=300
|
|
|
|
error_exit() {
|
|
printf "%s: %s\n" "$PROGNAME" "${1:-"Unknown Error"}" >&2
|
|
exit 1
|
|
}
|
|
|
|
usage() {
|
|
printf "usage: %s [OPTIONS] URI [ARGS]\n" "$PROGNAME"
|
|
printf "Simple client for spartan protocol\n"
|
|
}
|
|
|
|
case $1 in
|
|
-h | --help)
|
|
usage; exit ;;
|
|
-p | --port)
|
|
export PORT=$3 ;;
|
|
-* | --*)
|
|
usage; error_exit "unknown option $1" ;;
|
|
*)
|
|
echo $proto $host $path $port
|
|
printf "$host /$path 0\r\n" | nc $host $port
|
|
;;
|
|
esac
|