Codifica e decodifica Base64 su Windows, Linux e Mac
Quando è necessario codificare urgentemente un file in base64
Ecco alcuni esempi su come Codificare e decodificare un file in Base64 su Windows, Linux e Mac.
Convertire un file in Base64 su Windows
Per convertire un file normale in Base64 su Windows, è possibile utilizzare i seguenti metodi:
Utilizzando il Prompt dei comandi con Certutil
-
Aprire il Prompt dei comandi.
-
Eseguire il comando:
certutil -encode
Sostituire
con il percorso del file e
con il nome del file di output desiderato (es.encoded.b64
). -
Per visualizzare direttamente il contenuto Base64 sullo schermo senza salvare in un file temporaneo:
certutil -encode tmp.b64 && findstr /v /c:- tmp.b64 && del tmp.b64
Questo evita di lasciare file temporanei eliminando
tmp.b64
dopo l’elaborazione.
Utilizzando PowerShell
- Aprire PowerShell.
- Eseguire il comando:
Sostituire
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("your_file_path"))
"your_file_path"
con il percorso completo del file. Questo outputterà direttamente la stringa Base64 nel console.
Utilizzando uno script personalizzato
Se si necessita di maggiore flessibilità, è possibile utilizzare uno script come ConvertTo-Base64.ps1
. Permette di codificare i file in Base64 e, se necessario, di salvare l’output in un file o di formattarlo come JSON.
Questi metodi consentono di eseguire una codifica Base64 rapida ed efficiente senza richiedere installazioni aggiuntive di software.
Convertire un file in Base64 su Linux
Per convertire un file binario in Base64 su Linux, è possibile utilizzare il comando base64
,
che è generalmente preinstallato su quasi tutte le distribuzioni Linux.
Questo è molto migliore rispetto a Windows! :)
Ecco come si fa:
Sintassi base
base64 [OPTIONS] [FILE]
Passaggi per codificare un file
-
Aprire un terminale.
-
Eseguire il seguente comando:
base64 input_file > output_file
Sostituire
input_file
con il percorso del file eoutput_file
con il nome del file in cui si desidera salvare il contenuto codificato in Base64.Esempio:
base64 myfile.txt > encoded.txt
-
Se si desidera visualizzare il contenuto codificato direttamente nel terminale:
base64 input_file
Flag opzionali
-w
: Avvolgere le righe dopo un numero specifico di caratteri (predefinito 76). Usare-w 0
per disattivare l’avvolgimento delle righe. Esempio:base64 -w 0 input_file > output_file
Decodificare un file Base64
Per decodificare un file codificato in Base64 e tornare al formato originale:
base64 --decode encoded_file > decoded_file
Questo metodo è efficiente e funziona su quasi tutte le distribuzioni Linux senza richiedere installazioni aggiuntive.
Codificare / Decodificare Base64 su Mac
Questo è simile a Linux ma con alcune differenze.
Per convertire un file normale in Base64 su macOS, è possibile utilizzare il comando base64
preinstallato. Ecco come:
Passaggi per codificare un file
-
Aprire il Terminale.
-
Eseguire il seguente comando:
base64 -i input_file > output_file
Sostituire
input_file
con il percorso del file eoutput_file
con il nome del file in cui si desidera salvare il contenuto codificato in Base64.Esempio:
base64 -i myfile.txt > encoded.txt
-
Se si desidera visualizzare direttamente il contenuto codificato in Base64 nel terminale:
base64 -i input_file
Integrazione con la clipboard
È possibile codificare un file e copiare il risultato direttamente nella clipboard utilizzando:
base64 -i input_file | pbcopy
Decodificare un file Base64
Per decodificare un file codificato in Base64 e tornare al formato originale:
base64 -D -i encoded_file > decoded_file
Questi comandi sono efficienti e funzionano su tutte le versioni moderne di macOS a partire da 10.7
Elenco completo dei parametri della riga di comando del tool base64
$ base64 --help
Usage: base64 [OPTION]... [FILE]
Base64 encode or decode FILE, or standard input, to standard output.
With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
-d, --decode decode data
-i, --ignore-garbage when decoding, ignore non-alphabet characters
-w, --wrap=COLS wrap encoded lines after COLS character (default 76).
Use 0 to disable line wrapping
--help display this help and exit
--version output version information and exit
The data are encoded as described for the base64 alphabet in RFC 4648.
When decoding, the input may contain newlines in addition to the bytes of
the formal base64 alphabet. Use --ignore-garbage to attempt to recover
from any other non-alphabet bytes in the encoded stream.
...