
Eu tenho as seguintes linhas, então só quero substituir particularmente
client_encryption_options:
enabled: true
para
client_encryption_options:
enabled: false
client_encryption_options:
enabled: true
# If enabled and optional is set to true, encrypted and unencrypted connections over native transport are handled.
optional: false
keystore: XXXXXX
keystore_password: XXXXX
# Set require_client_auth to true to require two-way host certificate validation
require_client_auth: true
#
# Set truststore and truststore_password if require_client_auth is true
Responder1
Como sua entrada é um arquivo YAML, podemos usar um analisador YAML de linha de comando, como yq
fromhttps://kislyuk.github.io/yq/
yq -y '.client_encryption_options.enabled |= false' file.yml
Isso atualiza o valor da enabled
chave no client_encryption_options
objeto de nível superior para false
.
Para fazer a alteração no local, use yq
com a opção --in-place
ou -i
.
Este yq
é um wrapper em torno do jq
wrapper JSON e, portanto, removerá os comentários do documento.
Se você estiver usando o yq
programa dehttps://mikefarah.gitbook.io/yq/, que é o que você obtém se instalar yq
usando snap
, por exemplo, Ubuntu, então use
yq eval '.client_encryption_options.enabled |= false' file.yml
... e use sua opção --inplace
ou -i
para fazer edições no local.
Isso yq
não removerá os comentários do arquivo.