Uploading multiple files and checksums via http can be achieved with cURL and a few lines bash scripting. This might replace scp
in most cases.
# array of files (and checksums) provided as cURL options UPLOAD_FILES=() # get all files within myUploadDir dir and calculate checksums while read -r FILE do # get sha256 checksum CHECKSUM=$(sha256sum ${FILE} | awk '{print $1}' ) echo $FILE echo $CHECKSUM # extract filename FILENAME=$(basename ${FILE}) # append file and checksum to curl upload args UPLOAD_FILES+=("-F" "file=@${FILE}") UPLOAD_FILES+=("-F" "${FILENAME}=${CHECKSUM}") # get all files within myUploadDir done <<<$(find myUploadDir/* -type f | sort) # upload curl \ -X PUT -H "Content-Type: multipart/form-data" \ "${UPLOAD_FILES[@]}" \ https://httpbin.org/put