1 votes

Échapper aux crochets lors de l'utilisation de SED

Je voudrais remplacer la valeur varchar(36) par char(36) dans un fichier en utilisant sed. J'essaie avec

sed -i ’s/varchar(36)/char(6)/g’ calls_contacts.sql

Mais la commande ne s'exécute pas. Qu'est-ce qui ne va pas ?

2voto

stew Points 121

Je suppose que ce que vous voulez faire, c'est.. :

sed -i 's/varchar(36)/char(36)/gi' calls_contacts.sql

J'ai corrigé 3 choses :

  • Fermé le '
  • Remplacement du deuxième -i avec gi . Je suppose que vous voulez ignorer les cas et être global.
  • J'ai décapsulé la parenthèse ( car ils n'ont pas besoin d'être échappés (ne doivent pas être échappés) en mode normal.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X