셸 스크립트에서 이미지를 base64로 인코딩하고 변수에 넣으려고합니다.
test="$(printf DSC_0251.JPG | base64)"
echo $test
RFNDXzAyNTEuSlBH
나는 또한 다음과 같은 것을 시도했습니다.
test=\`echo -ne DSC_0251.JPG | base64\`
그러나 여전히 성공하지 못했습니다.
다음과 같이하고 싶습니다.
curl -v -X POST -d '{"image":$IMAGE_BASE64,"location":$LOCATION,"time_created":$TIMECREATED}' -H 'Content-type: text/plain; charset=UTF8' http://192.168.1.1/upload
나는 이것을 http://www.zzzxo.com/q/answers-bash-base64-encode-script-not-encoding-right-12290484.html 찾았습니다 .
그러나 여전히 성공하지 못했습니다.
답변
파일 이름 자체가 아닌 ‘DSC_0251.JPG’라는 파일 cat
의 내용 을 가져 오기 위해 를 사용해야 합니다.
test="$(cat DSC_0251.JPG | base64)"
그러나 base64
파일 자체에서 읽을 수 있습니다.
test=$( base64 DSC_0251.JPG )
답변
한 줄 결과 :
base64 -w 0 DSC_0251.JPG
대상 HTML
:
echo "data:image/jpeg;base64,$(base64 -w 0 DSC_0251.JPG)"
파일로 :
base64 -w 0 DSC_0251.JPG > DSC_0251.JPG.base64
변수에서 :
IMAGE_BASE64="$(base64 -w 0 DSC_0251.JPG)"
에 대한 변수 HTML
:
IMAGE_BASE64="data:image/jpeg;base64,$(base64 -w 0 DSC_0251.JPG)"
읽을 수있는 데이터 복구 :
base64 -d DSC_0251.base64 > DSC_0251.JPG
답변
이를위한 Linux 명령이 있습니다. base64
base64 DSC_0251.JPG >DSC_0251.b64
변수 사용에 결과를 할당하려면
test=`base64 DSC_0251.JPG`
답변
html 용 Base 64 :
file="DSC_0251.JPG"
type=$(identify -format "%m" "$file" | tr '[A-Z]' '[a-z]')
echo "data:image/$type;base64,$(base64 -w 0 "$file")"
답변
base64로 만들고 클립 보드에 넣으려면 :
file="test.docx"
base64 -w 0 $file | xclip -selection clipboard
답변
터미널에서 입력이 필요하면 이것을 시도하십시오
lc=`echo -n "xxx_${yyy}_iOS" | base64`
-n
옵션은 base64 명령에 “\ n”문자를 입력하지 않습니다.