Maison  >  Article  >  développement back-end  >  Erreur d'analyse du modèle : template::1 : inattendu '=" dans l'opérande

Erreur d'analyse du modèle : template::1 : inattendu '=" dans l'opérande

PHPz
PHPzavant
2024-02-11 09:00:10848parcourir

"Erreur

l'éditeur php Baicao vous présente le problème des erreurs d'analyse des modèles. Au cours du processus d'analyse du modèle, nous rencontrons souvent des erreurs, la plus courante étant l'erreur « Erreur d'analyse du modèle : Modèle : 1 : erreur "=" in operand » inattendue. Cette erreur se produit généralement lorsque nous utilisons le signe égal "=" pour attribuer une valeur. Pour éviter cette erreur, nous devons vérifier attentivement le code et nous assurer que le signe égal est utilisé correctement. Grâce à une analyse correcte du modèle, nous pouvons éviter cette erreur et améliorer la lisibilité et la maintenabilité du code.

Contenu des questions

template parsing error: template: :1: unexpected "=" in operand

L'erreur ci-dessus s'est produite lors de l'exécution de la commande suivante sous Windows,

docker inspect --format="{{range $key, $value := .Config.Env}}{{if eq (index (split $value "=") 0) "VERSION"}}{{$value}}{{end}}{{end}}" octopusbi-agent-backend

Quel pourrait être le problème ?

Solution

"=" 符号的问题,如果在双引号(") 标记括起来的字符串内使用双引号(") 标记,则必须添加反斜杠( ) 在每个双引号(") 标记之前,不包括第一个和最后一个双引号(") marque.

Exemple :-

"hello "your_name""  <-- wrong
"hello \"your_name\""  <-- correct

fenêtres

Comme je l'ai déjà mentionné, j'ai ajouté "=" 更改为 "=" ,之后,我遇到了另一个与名为 "version" 的其他字符串值相关的问题。为此,我还必须将 "version" 更改为 "version" et cela a fonctionné comme je m'y attendais.

La commande finale est donc la suivante :

docker inspect --format="{{range $key, $value := .config.env}}{{if eq (index (split $value \"=\") 0) \"version\"}}{{$value}}{{end}}{{end}}" octopusbi-agent-backend

ubuntu

J'ai exécuté la même commande dans Ubuntu avec les guillemets d'ouverture et de fermeture marqués par des guillemets simples (') 标记,并保留其余的双引号(").

La commande finale est donc la suivante :

docker inspect --format='{{range $key, $value := .Config.Env}}{{if eq (index (split $value "=") 0) "VERSION"}}{{$value}}{{end}}{{end}}' octopusbi-agent-backend

Résumé

Si vous utilisez la commande avec --format 选项的 dockerspect,

  • Dans Windows : -
    1. La chaîne de format doit commencer par un guillemet double (").
    2. Si vous souhaitez utiliser des marqueurs guillemets doubles (")标记,请使用") dans la chaîne de format, utilisez
    3. .
    1. Dans Ubuntu : -
    2. 'La chaîne de format doit commencer par un guillemet simple (
    3. ).
    4. "N'hésitez pas à utiliser des guillemets doubles (
    5. ) dans la chaîne de format.

"Le plus court est que si nous devons utiliser des guillemets, nous devons utiliser des marqueurs de guillemets doubles (

) à l'intérieur de la chaîne de format pour les deux environnements. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer