Хм, быстрый поиск по пакету не дает ничего подобного отдельной автономной утилите.
С другой стороны, он показывает, что существует подходящая библиотека Perl, и ее достаточно легко быстро создать скрипт на Perl. Что-то вроде:
$ sudo apt-get install libmime-base32-perl
А затем сценарий вроде base32enc.pl
:
#!/usr/bin/perl
use MIME::Base32 qw( RFC );
undef $/; # in case stdin has newlines
$string = <STDIN>;
$encoded = MIME::Base32::encode($string);
print "$encoded\n";
Итак:
$ echo -n "hello" | ./base32enc.pl
NBSWY3DP
Достаточно редкая запись CPAN: http://search.cpan.org/~ danpeder / MIME-Base32-1.01 / Base32.pm
Итак, небольшое изменение позволит вам также выполнять декодирование.
Просто улучшение отличного ответа cjc, так что мы можем получить утилиту base32
, которая работает аналогично base64
в том, как мы можем кодировать и декодировать:
#! /usr/bin/perl
use MIME::Base32;
use strict;
undef $/;
my $string = <STDIN>;
my $changed;
if ( $ARGV[0] eq "-d" ){
$changed = MIME::Base32::decode($string);
}else{
$changed = MIME::Base32::encode($string);
}
if ( $changed =~ /\n$/ ) {
printf $changed;
}else{
printf $changed . "\n";
}
Тест:
$ base32 < <(echo -n 'abcdef')
MFRGGZDFMY
$ base32 -d < <(echo 'MFRGGZDFMY')
abcdef
Установить perl-MIME-Base32 .noarch
:
yum install perl-MIME-Base32.noarch
Сохраните скрипт в файле bas32:
#! / Usr / bin / perl
используйте MIME :: Base32 qw (RFC);
undef $ /; # если в stdin есть символы новой строки
$ ed = $ ARGV [0];
$ строка = $ ARGV [1];
если ($ ed eq "-e")
{
$ encoded = MIME :: Base32 :: encode ($ строка);
печать "$ закодировано \ n";
}
elsif ($ ed eq "-d")
{
$ decoded = MIME :: Base32 :: decode ($ строка);
print "$ decoded \ n";
}
else {print "пожалуйста, передайте также вариант \ n";
Выход;
}
chmod + x base32
cp base32 / usr / bin /
base32 -e строка
base32 -d "любое закодированное значение"
Использование Python:
$ python
Python 2.7.14 (default, Sep 27 2017, 12:15:00)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import base64
>>> base64.b32encode('hello')
'NBSWY3DP'