J'essaie d'encoder une image en base64 dans un script shell et de la mettre en variable:
test="$(printf DSC_0251.JPG | base64)"
echo $test
RFNDXzAyNTEuSlBH
J'ai aussi essayé quelque chose comme ça:
test=\`echo -ne DSC_0251.JPG | base64\`
mais toujours sans succès.
Je veux faire quelque chose comme ça:
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
J'ai trouvé ceci http://www.zzzxo.com/q/answers-bash-base64-encode-script-not-encoding-right-12290484.html
mais n'ont toujours pas eu de succès.
$RESPONSE="$(curl -v -X POST -d '{"image":`base64|$DIR$IMAGE`,"location":$LOCATION,"time_created":$TIMECREATED}' -H 'Content-type: text/plain; charset=UTF8' --max-time 180 -s $URL)";
cat vlc.jpg | base64 -w 0
- au cas où quelqu'un voudrait une sortie sous forme de chaîne à copier et coller.base64 DSC_0251.JPG
? Il n'est pas nécessaire de parcourir lecat
filtre lorsque le programme prend un fichier comme arguments (base64 [OPTIONS] [FILE]
)Résultat sur une seule ligne:
Pour
HTML
:En tant que fichier:
En variable:
En variable pour
HTML
:Récupérez vos données lisibles:
Voir: http://www.greywyvern.com/code/php/binary2base64
la source
-w 0
ce paramètre est très important dans de nombreux cas. Ex. Si nous exécutons directement dans la ligne de commande. Merci!base64: invalid option -- w
. Quand il est supprimé, je reçoisUnable to open '0': No such file or directory
. Voyez plutôt ceci .Il existe une commande Linux pour cela: base64
Pour affecter le résultat à l'utilisation de la variable
la source
base64 -d DSC_0251.b64 > DSC_0251.JPG
peut vous récupérer des données lisibles.Base 64 pour html:
la source
Pour le baser64 et le mettre dans votre presse-papiers:
la source
Si vous avez besoin de l'aide de termial, essayez ceci
-n
L'option n'entrera pas le caractère "\ n" dans la commande base64.la source