Bash : Funktion um Files zu laden
Funktion um Dateien aus dem Internet zu laden. Prüft ob curl vorhanden ist , wenn nicht wird wget versucht. Wenn gar nichts von beiden gefunden wird wird das Skript beendet.
function get_remote_file () { # ------------------------- get_remote_file ------------------------------------------------------------------- # download an file to local storage # # need 2 parameters : get_remote_file [URL_TO_FILE] [LOCAL_PATH] # ----------------------------------------------------------------------------------------------------------------- if [[ ! -z "${1}" || ! -z "${2}" ]]; then bin_dl="" # check Local Path if [ ! -d "${2}" ]; then mkdir "${2}" fi # check bins # using command instead of which to be posix comp. # ------ check curl command -v curl >/dev/null 2>&1 if [ $? -eq 0 ]; then bin_dl="curl -s -O " fi # ------ check wget command -v wget >/dev/null 2>&1 if [[ ${bin_dl} = "" && $? -eq 0 ]]; then bin_dl="wget -q " fi # ------ if emtpy curl and wget not found if [ ${bin_dl} = "" ]; then echo "need curl or wget for work please install one of them" exit 98 fi # download file if [[ "${1}" =~ http:// || "${1}" =~ https:// || "${1}" =~ ftp:// ]]; then # ${1} is an remote file will be downloaded to ${2} cd "${2}" && { ${bin_dl} "${1}" ; cd -; } else # ${1} is not an remote file EXIT ! exit 98 fi else echo "check parameters for function #> get_remote_file" exit 9 fi }