Как закодировать base64 через командную строку?

Существует ли терминальная команда в Mac OS X, который base64 закодирует файл или stdin?

229
задан 19.08.2017, 17:57

4 ответа

openssl может сделать это для Вас, и это все установлено с OS X по умолчанию; никакая потребность установить darwinports.

$ openssl base64 -in <infile> -out <outfile>

Без -in опция читает из stdin

244
ответ дан 07.12.2019, 07:40

перекод должен добиться цели для Вас

recode ../b64 < file.txt > file.b64

перекод доступен для OS X через MacPorts.

1
ответ дан 07.12.2019, 07:40

Существует Perl плюс MIME:: Base64:

perl -MMIME::Base64 -e 'undef $/;while(<>){print encode_base64($_);}'

Это прибывает предварительно установленное. Можно указать отдельные файлы на командной строке (или снабдить данными на стандартном входе); каждый файл отдельно кодируется. Можно также сделать:

perl -i.txt -MMIME::Base64 -e 'undef $/;while(<>){print encode_base64($_);}' file1

Это создает резервную копию file1 к file1.txt и пишет Основе 64 закодированных вывода по исходному файлу.

1
ответ дан 07.12.2019, 07:40

Openssl может использоваться более кратко:

echo -n 'input' | openssl base64

[эхо-n-> должно использоваться, или кодирование будет сделано включая символ новой строки]

или

openssl base64 <ENTER> [type input] <CTRL+D>
99
ответ дан 07.12.2019, 07:40

Теги

Похожие вопросы