.strsub

.strsub <source> <remplacement> file [file ...]

La commande .strsub permet d'effectuer un remplacement de chaîne de base dans un ou plusieurs fichiers texte. Le système analyse les fichiers cible associés à la chaîne <source> ; lorsqu'il trouve une correspondance, le système remplace la chaîne <source> par la chaîne de <remplacement>. La commande .strsub remplace chaque instance de la chaîne (source) sur chaque ligne de chaque fichier.

La commande .strsub s'exécute dans les systèmes d'exploitation, sans dépendre de commandes spécifiques disponibles sur le serveur.

Pour remplacer une chaîne _VERSION_ dans un fichier about.c, utilisez une commande
.strsub _VERSION_ 2.34 about.c
Vous devez indiquer un ou plusieurs noms de fichier précis, sans utiliser de caractères génériques. Par exemple, une commande telle que celle qui suit échouera :
.strsub _VERSION_ 2.34 *.txt
Vous pouvez cependant utiliser des variables dans la commande, ainsi, une commande comme celle qui suit fonctionnera si les variables VERSION et FILENAME ont été définies dans l'environnement.
.strsub _VERSION_ ${VERSION} ${FILENAME}
Remarque : Utilisez des espaces pour séparer les paramètres dans la commande.
La commande .strsub ressemble à la commande .edit ; elles se distinguent sur les points suivants :

La commande .edit utilise la syntaxe POSIX Extended Regular Expression par défaut. Si l'agent a été compilé avec l'aide PCRE (Perl Compatible Regular Expression), l'expression de substitution peut être suivie d'un caractère "p" indiquant que la syntaxe PCRE devrait être utilisée.

Dans les deux cas, l'expression est interprétée deux fois par l'agent. Par conséquent, quatre barres obliques inversées doivent être insérées là où une seule est nécessaire. Par exemple,
quatre barres obliques pour un point :
\\\\.
Sinon, vous pouvez utiliser l'indicateur /x pour supprimer les barres obliques inversées :
.strsub/x

Commentaires en retour