45 lines
723 B
Bash
Executable File
45 lines
723 B
Bash
Executable File
#!/bin/bash
|
|
|
|
## usage
|
|
USAGE="USAGE:
|
|
$(basename "$0") source_file dest_dir"
|
|
readonly USAGE
|
|
|
|
function help_message() {
|
|
printf "%s\n" "$USAGE"
|
|
}
|
|
|
|
## check parameters
|
|
if [ "$#" -ne 2 ]; then
|
|
help_message
|
|
exit 0
|
|
fi
|
|
|
|
## vars
|
|
SOURCE=$1
|
|
readonly SOURCE
|
|
|
|
TARGET="$(
|
|
cd -- "$2" >/dev/null 2>&1 || exit
|
|
pwd -P
|
|
)"
|
|
readonly TARGET
|
|
|
|
## test vars
|
|
if ! test -f "${SOURCE}"; then
|
|
printf "%s\n" "${SOURCE} file does not exist"
|
|
exit 0
|
|
fi
|
|
|
|
if ! test -d "${TARGET}"; then
|
|
printf "%s\n" "${TARGET} path does not exist"
|
|
exit 0
|
|
fi
|
|
|
|
## create zip file
|
|
#NAME=$(basename "${SOURCE}")
|
|
filename=$(basename -- "$SOURCE")
|
|
#extension="${filename##*.}"
|
|
filename="${filename%.*}"
|
|
7z a -tzip -mx=9 "${TARGET}"/"${filename}".zip "${SOURCE}"
|