Valor inválido para o campo 'recurso': ''. Padrão de caminho inválido ao adicionar regras de caminho

Valor inválido para o campo 'recurso': ''. Padrão de caminho inválido ao adicionar regras de caminho

Quero adicionar regras de correspondência de caminho a um mapa de URL no mecanismo de computação do Google. Aqui está o meu comando:

gcloud compute url-maps add-path-matcher myproject-url-map --default-service \
backend-service-wordpress  --path-matcher-name root --path-rules "/=backend-\
service-wordpress,/features/=backend-service-wordpress,/pricing/=backend-\
service-wordpress,/blog/=backend-service-wordpress,/\?*=backend-service-wordpress"

lança esta mensagem de erro:

ERROR: (gcloud.compute.url-maps.add-path-matcher) There was a problem modifying the resource:
 - Invalid value for field 'resource': ''. Invalid path pattern

Acho que não defini um recurso em branco nesta linha de comando.

Eu tenho que citar os parâmetros --path-rulesentre aspas porque o zsh reclamará do contrário.

Esta é a primeira regra que quero definir. Em seguida, adicionarei uma regra para mapear tudo /*para outro serviço de back-end, assim:

gcloud compute url-maps add-path-matcher myproject-url-map --default-service \
    backend-service-app --path-matcher-name others --path-rules "/*=backend-service-app"

O que significa essa mensagem de erro? O que há de errado com meu comando?

Responder1

Eu suspeito que tenha algo a ver com o uso de aspas duplas e barras invertidas para o argumento de --path-rules. Em particular, você não precisa da barra invertida para citar o ponto de interrogação. Observe a saída de:

print -r -- "\?"

Da mesma forma, as novas linhas entre aspas duplas não precisam de barra invertida, a menos que você tenha a opção csh_junkie_quotes definida.

Existem várias maneiras pelas quais o zsh pode ajudá-lo a citar palavras automaticamente. Uma maneira é talvez tentar vincular uma chave à região de cotação. Isto irá citar a região (modo emacs) ou seleção visual (modo vi).

informação relacionada