improvements to ssh-serve-files
This commit is contained in:
parent
bbe08b942a
commit
ed7bd87ff6
1 changed files with 29 additions and 15 deletions
|
@ -1,6 +1,10 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
#colors
|
||||
BOLD="\033[1m"
|
||||
CYAN="\033[1;36m"
|
||||
GREEN="\033[1;33m"
|
||||
END="\033[0m"
|
||||
|
||||
help() {
|
||||
cat <<EOF
|
||||
|
||||
|
@ -21,19 +25,27 @@ if [[ $# -eq 0 ]]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -z $BROWSER ]]; then
|
||||
echo 'please set $BROWSER'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
PORT=8090
|
||||
DIR="~/"
|
||||
DIR='~/'
|
||||
|
||||
USER_HOST=$1
|
||||
shift
|
||||
case $USER_HOST in
|
||||
-h | --help)
|
||||
help
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
|
||||
while [[ $1 =~ ^- && $1 != "--" ]]; do
|
||||
echo checking $1
|
||||
case $1 in
|
||||
-h | --help)
|
||||
help
|
||||
exit 0
|
||||
;;
|
||||
-p | --port)
|
||||
shift
|
||||
PORT=${PORT:+$1}
|
||||
|
@ -42,8 +54,8 @@ while [[ $1 =~ ^- && $1 != "--" ]]; do
|
|||
shift
|
||||
DIR=${DIR:+$1}
|
||||
;;
|
||||
-* | --*)
|
||||
echo "Invalid option: $opt"
|
||||
-*)
|
||||
echo "Invalid option: $1"
|
||||
help
|
||||
exit 1
|
||||
;;
|
||||
|
@ -53,13 +65,15 @@ done
|
|||
|
||||
URL="http://localhost:$PORT"
|
||||
|
||||
echo "connecting to $USER_HOST with port $PORT"
|
||||
printf "connecting to ${BOLD}%s${END} with port ${GREEN}%s${END}\n" \
|
||||
"$USER_HOST" "$PORT"
|
||||
echo "serving directory:"
|
||||
echo "->>$DIR"
|
||||
printf " ${BOLD}->>${CYAN} %s${END}\n" "${DIR}"
|
||||
|
||||
echo "opening $URL using $BROWSER"
|
||||
$BROWSER $URL >/dev/null 2>&1 &
|
||||
printf "opening ${BOLD}%s${END} using %s\n" "$URL" "$BROWSER"
|
||||
echo '---------------'
|
||||
"$BROWSER" "$URL" >/dev/null 2>&1 &
|
||||
|
||||
# first change directory in case python<3.7
|
||||
ssh -tL localhost:$PORT:localhost:$PORT $USER_HOST \
|
||||
ssh -tL localhost:"$PORT":localhost:"$PORT" "$USER_HOST" \
|
||||
"cd $DIR && python3 -m http.server $PORT"
|
||||
|
|
Loading…
Reference in a new issue