Let my HOME alone 1/2
This commit is contained in:
parent
2ae37e902e
commit
a83e45df5e
94 changed files with 328 additions and 58 deletions
103
config/scripts/proxy
Executable file
103
config/scripts/proxy
Executable file
|
@ -0,0 +1,103 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Allows easy manipulation of the proxy variables
|
||||
|
||||
function proxy_set_help {
|
||||
echo "Usage: $0 set ADDRESS"
|
||||
echo
|
||||
echo "Arguments:"
|
||||
echo " ADDRESS Address of the proxy"
|
||||
echo
|
||||
echo "Examples:"
|
||||
echo ' eval "$(proxy set http://proxy.mycompany.com:3128/)"'
|
||||
return 0
|
||||
}
|
||||
|
||||
function proxy_set {
|
||||
if [ -z $1 ]; then
|
||||
proxy_set_help
|
||||
return 1
|
||||
fi
|
||||
echo "export http_proxy='$1'"
|
||||
echo "export https_proxy='$1'"
|
||||
echo "export ftp_proxy='$1'"
|
||||
echo "export rsync_proxy='$1'"
|
||||
exit 0
|
||||
}
|
||||
|
||||
function proxy_setup_help {
|
||||
echo "Usage: $0 setup"
|
||||
echo
|
||||
echo "Examples:"
|
||||
echo " proxy_set # Then eval the output"
|
||||
return 0
|
||||
}
|
||||
function proxy_setup {
|
||||
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
|
||||
|
||||
if (( $# > 0 )); then
|
||||
valid=$(echo $@ | sed -n 's/\([0-9]\{1,3\}.\)\{4\}:\([0-9]\+\)/&/p')
|
||||
if [[ $valid != $@ ]]; then
|
||||
>&2 echo "Invalid address"
|
||||
return 1
|
||||
fi
|
||||
proxy_set "http://$1/"
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo -n "User: "; read username
|
||||
if [[ $username != "" ]]; then
|
||||
echo -n "Password: "
|
||||
read -es password
|
||||
local pre="$username:$password@"
|
||||
fi
|
||||
|
||||
echo -n "Server: "; read server
|
||||
echo -n "Port: "; read port
|
||||
proxy_set "http://$pre$server:$port/"
|
||||
return 0
|
||||
}
|
||||
|
||||
function proxy_off_help {
|
||||
echo "Usage: $0 off"
|
||||
echo
|
||||
echo "Examples:"
|
||||
echo ' eval $(proxy off)'
|
||||
return 0
|
||||
}
|
||||
function proxy_off {
|
||||
echo 'unset http_proxy'
|
||||
echo 'unset https_proxy'
|
||||
echo 'unset ftp_proxy'
|
||||
echo 'unset rsync_proxy'
|
||||
return 0
|
||||
}
|
||||
|
||||
function proxy_help {
|
||||
command="$1"
|
||||
if [ -n "$command" ]; then
|
||||
if type "proxy_${command}_help" &> /dev/null; then
|
||||
shift
|
||||
"proxy_${command}_help" "$@"
|
||||
return $?
|
||||
fi
|
||||
fi
|
||||
echo "Usage: $0 COMMAND"
|
||||
echo
|
||||
echo "Commands:"
|
||||
echo " setup Interactively setup proxy"
|
||||
echo " set Set proxy from address"
|
||||
echo " off Turn off proxy"
|
||||
echo " help Get help with commands"
|
||||
return 0
|
||||
}
|
||||
|
||||
# MAIN
|
||||
command="$1"
|
||||
shift
|
||||
if type "proxy_$command" &> /dev/null; then
|
||||
"proxy_$command" "$@"
|
||||
else
|
||||
proxy_help
|
||||
fi
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue