Se você digitar
cat | openssl enc -base64
e então pressione Ctrl + D então ele irá codificar tudo que você acabou de digitar.
O seguinte comando funciona para codificar stdin
usando echo
:
echo "abc" | openssl enc -base64
Este comando também funciona para substituir caracteres em stdin
usando cat
:
cat | sed 's/a/b/g'
No entanto, o comando a seguir, que deve codificar stdin
usando cat
, não atende às minhas necessidades, porque ele não exibe o valor codificado toda vez que eu pressiono o retorno.
cat | openssl enc -base64
Como codifico stdin
on-the-fly usando cat
?
Se você digitar
cat | openssl enc -base64
e então pressione Ctrl + D então ele irá codificar tudo que você acabou de digitar.
Primeiro de tudo, você (praticamente) nunca precisa usar cat |
ou cat
one_file
|
.
Por exemplo, o seu exemplo sed
funciona bem como
sed 's/a/b/g'
Então, minha primeira sugestão é que você tente
openssl enc -base64
sem o cat
.
Mas, sinceramente, não espero que isso funcione. Você pode precisar ficar um pouco mais extravagante:
while read x
do
echo "$x" | openssl enc -base64
done
Observe que isso executa um novo comando openssl
para cada linha de entrada, portanto, isso pode não fornecer os mesmos resultados que a mesma entrada executa por meio de uma única chamada de openssl
.
Tags command-line openssl linux