Eu quero criptografar um segredo do cliente que começa com um traço, mas se eu fizer algo como:
aws kms encrypt --region us-east-1 --key-id xxxyyzz --output text --query CiphertextBlob --plaintext -blahblah-
O resultado é:
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: argument --plaintext: expected one argument
Tentei escapar como:
aws kms encrypt --region us-east-1 --key-id xxxyyzz --output text --query CiphertextBlob --plaintext \-blahblah-
Mas deu o mesmo erro. Minhas pesquisas até agora só deram respostas específicas do aplicativo (por exemplo sed
, ). Qual é o truque indescritível que estou perdendo?
Bem, fazendo
aws kms encrypt help
me deu a solução:Onde clientsecret.txt contém a string que contém traços, sem um novo caractere de linha.