Sua mensagem de erro já dá uma dica sobre o que está errado!
Seu one-liner está fornecendo o conteúdo real do arquivo como nome de arquivo para o programa qrencode. Daí a mensagem de erro.
Experimente qrencode -o test.png -t png < private.key
.
Você deve dar uma olhada no redirecionamento de entrada e saída do shell. Por exemplo, Redirecionamento de E / S .
Vejo que você também encontrou o caminho para o repositório GitHub do qrencode :) Há uma explicação por que uma chave de 4096 bits não pode ser codificada como um código QR:
qrencode is encoding your private GPG key as 8 bit (binary|utf-8), because the key is not pure alphanumeric. It contains special character. the alphanumeric mode only supports those special character .(%*+-./:). So the maximum GPG key can only be 2953 char long.
De link