Created
July 15, 2020 06:19
-
-
Save iamucil/d8f411fe5d06dbe02f37529b885f87b8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# echo "data:$(xdg-mime query filetype 02_KTP.png);base64,$(base64 -w 0 02_KTP.png)" | |
filename= | |
usage() { | |
echo "usage: base64encode [[-f file ] | [-h]]" | |
} | |
if [[ $# -eq 0 ]] ; then | |
usage | |
exit 0 | |
fi | |
while [ "$1" != "" ]; do | |
case $1 in | |
-f | --file ) shift | |
filename=$1 | |
;; | |
-h | --help ) usage | |
exit | |
;; | |
* ) usage | |
exit 1 | |
esac | |
shift | |
done | |
function encode() { | |
filename=$(realpath $1) | |
if [ -z "${filename}" ]; then | |
echo "file name empty" | |
exit 1 | |
fi | |
if [ ! -f "${filename}" ]; then | |
echo "The file ${filename} does not exist"; | |
exit 1 | |
fi | |
mime_type=$(file --mime-type -b $filename) | |
base64_encoded=$(base64 -w 0 $filename) | |
if [[ $(file --mime-type -b ${filename}) != image/* ]]; then | |
echo "file \"${filename}\" is not an image. Provide only image file." | |
exit 0 | |
fi | |
echo "This will encode file \"$filename\" into base64 dan save into your clipboard. Just paste into somewhere "\ | |
"to view base64 encoded" | |
echo "Filename: $(basename -- $filename)" | |
echo "Mimetype: $mime_type" | |
echo "================================ base64 ================================" | |
echo $base64_encoded | |
echo "================================= end ==================================" | |
echo "data:$mime_type;base64,$base64_encoded" | xclip -selection clipboard | |
echo "end of encoding" | |
} | |
encode $filename |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment