Uma tarefa muito comum que eu preciso fazer durante o meu dia-a-dia de engenharia de software, quer seja para codificar ou decodificar base64 cadeias de caracteres; ele vem quando eu estou trabalhando com coisas como chaves privadas ou Kubernetes segredos, que são codificados em base64. Para isso, você pode facilmente memorizar um comando para cada um que você pode executar em seu terminal.
em Primeiro lugar, eu seria negligente se eu não mencionar que você não necessariamente tem que fazer isso em sua interface de linha de comando. Há dois sites irmãos, Base64 Decode e Base64 Encode, que alcançam esta tarefa. Eu não sou afiliado com eles de alguma forma, mas eu tenho certeza de que muitos, muitos desenvolvedores estão familiarizados com eles.
no entanto, existem várias razões pelas quais você não pode usar esses sites; por um lado, talvez você esteja offline e não possa acessá-los. Segundo, talvez você não confie totalmente em seus dados secretos indo para o servidor de alguém que você não conhece. Ambos são pontos válidos, e é por isso que sugiro os métodos que estou prestes a rever.
primeiro, para codificar no base64, execute o seguinte comando no seu terminal:
echo -n 'username' | base64
vamos rever os diferentes componentes para isto.
-
echo
: este comando escreve uma cadeia de caracteres à saída padrão, o que, em termos menos técnicos, significa que imprime literalmente o que quer que escreva no ecrã novamente. -
-n
: esta opção indica que deseja que o resultado seja impresso numa nova linha. Isto é realmente muito útil, porque caso contrário, a string codificada base64 irá imprimir logo depois, sem espaço ou qualquer coisa. É apenas mais difícil copiar e colar, e você pode até acidentalmente copiar alguns dos comandos iniciais com a corda, o que certamente causaria dores de cabeça ao longo da linha. Eu recomendo que você começa no hábito de incluir esta bandeira mesmo que não seja necessário fazer o comando realmente funcionar. -
'username'
: é aqui que você coloca o texto que deseja codificar com base64; não tem que ser literalmenteusername
. -
|
: Este é um tubo que diz ao comando que você quer redirecionar a saída da parte esquerda para a parte direita, essencialmente. Neste caso, não queremos simplesmente fazer eco do que escrevemos; queremos codificá-lo! Assim, forneceremos do lado direito as instruções para codificar a string. -
base64
: Este é um programa que está nocoreutils
(ou GNU Core Utilities) o pacote que vem pré-empacotado com o seu Mac ou Linux OS. Outras ferramentas familiares para você que também estão nacoreutils
includels
rm
ecat
. Basicamente, isto fará todo o trabalho duro de codificar o texto que você forneceu anteriormente.
o resultado do comando acima é o seguinte:
dXNlcm5hbWU=
Decode no base64
digamos que você realmente começou com o texto codificado base64 acima, dXNlcm5hbWU=
. Se você quiser descodificá-lo, o processo é realmente tão fácil como era na seção acima.
execute simplesmente o seguinte comando:
base64 --decode dXNlcm5hbWU=
isto deve ser muito fácil de compreender; a opção--decode
faz exactamente o que pensa que faz! A saída é:
username
Fácil de memorizar, mas útil para a vida
Se você trabalha com software, eu não acho que o subtítulo acima é muito exagero; eu usar esses comandos o tempo todo, e eu sou tão grata por eles.