Rechercher : dans
Par :

Fichier de commandes pour éditeur vi

Dernière réponse le 28 jun 2007 à 14:53:52 solex81, le 28 jun 2007 à 09:18:11 
 Signaler ce message aux modérateurs

Je voudrais exécuter l'éditeur vi sur un ensemble de fichiers en faisant exécuter des commandes contenues dans un fichier (dans le cas présent substitutions de chaines de caractères). cela m'éviterait le caractère fastidieux de ces modifs.
quelqu'un connait-il la solution ?
merci.

Configuration: Windows XP
1 serveur UNIX

Meilleures réponses pour « fichier de commandes pour éditeur vi » dans :
Linux - L'éditeur Vi Voir Introduction à Vi Vi est un des éditeurs de texte les plus populaires sous les systèmes de type Unix (avec Emacs et pico) malgré son ergonomie très limitée. Sous Linux il existe une version libre de Vi appelée Vim (Vi Improved). Vi (prononcez...
Linux - L'éditeur Vi Voir Introduction à Vi Vi est un des éditeurs de texte les plus populaires sous Linux (avec Emacs et pico) malgré son ergonomie très limitée. En effet, Vi (prononcez Vihaille) est un éditeur entièrement en mode texte, ce qui signifie que chacune des...
[Windows] Obtenir la liste des fichiers d'un dossier VoirLister le contenu d'un dossier Voici une astuce simple qui permet de lister le nom des fichiers contenus dans un répertoire. Vous pourrez obtenir en un clic les titres de vos chansons, de vos photos, etc. dans un fichier...
Télécharger Tweak VI VoirTweak VI Basic est un utilitaire permettant d'optimiser et de personnaliser Windows Vista. Voici un aperçu des fonctionnalités de Tweak VI: Activation de centaines de paramètres cachés de Windows vista Nettoyage de la base de registre ...
Télécharger PHP Edit VoirPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des fonctions Débuggeur...
Utilisation de la commande ftp VoirLe protocole FTP FTP (File Transfer Protocol) est un protocole, c'est-à-dire un langage standard de communication entre deux machines, permettant à des machines de types différents (ou dont le système d'exploitation est différent) de transférer des...

1

jipicy, le 28 jun 2007 à 09:34:49

Salut,

Et pourquoi pas un script (ou une ligne de commande) avec "sed" ?
Que veux-tu faire exactement ?
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

2

solex81, le 28 jun 2007 à 10:29:22

Bonjour Jipicy

voilà mon problème:

j'ai une grosse centaine de programmes en SQL dans lesquels j'ai des chaines de caractères à modifier,
du genre truc05 en truc06, bidulea en biduleb
et ceci n'importe où dans mes programmes
j'utilise (par exemple) la commande :1,$s/truc05/truc06/
puis la commande :1,$s/bidulea/biduleb/
je voulais mettre ces deux commandes dans un fichier 'toto'
et faire ensuite vi *.sql et faire exécuter le contenu de toto de manière automatique

je ne connais pas sed ; serait-ce une solution ?

merci à toi

Répondre à solex81

3

jipicy, le 28 jun 2007 à 11:24:12

Re-

Bon tu devrais trouver dans cette doc matières à exécuter ton projet.

Quant à "sed", avant d'aller plus loin, il faudrait savoir quelle version est installée sur ton serveur "unix" ? (sed -v ou sed --version)

Sinon voici un aperçu de ce qu'on peut faire avec :

[jp@MDK tmpfs]$ ls

fich1.txt  fich2.txt  fich3.txt  fich4.txt

[jp@MDK tmpfs]$ cat fich*

Bonjour A
Bonjour B
Bonjour C

Bonjour A
Bonjour B
Bonjour C

Bonjour A
Bonjour B
Bonjour C

Bonjour A
Bonjour B
Bonjour C

[jp@MDK tmpfs]$ sed 's/Bonjour C/Au revoir C/' fich*

Bonjour A
Bonjour B
Au revoir C

Bonjour A
Bonjour B
Au revoir C

Bonjour A
Bonjour B
Au revoir C

Bonjour A
Bonjour B
Au revoir C

[jp@MDK tmpfs]$
;-))
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

4

 solex81, le 28 jun 2007 à 14:53:52

Re re

Merci beaucoup, j'ai pu me débrouiller avec l'éditeur "sed"
en créant un fichier de commandes TOTO qui contenait ceci:

s/bonjour A/au revoir A/g
s/bonjour B/au revoir B/g
s/bonjour C/au revoir C/g

et en faisant un script en UNIX nommé TITI
avec 2 lignes pour chaque fichier à modifier:

sed -f TOTO fich1.txt> tatave.tmp
mv tatave.tmp fich1.txt

c'est un peu long pour faire le fichier TITI mais la prochaine fois ce sera beaucoup plus facile...

merci encore et prends soin de toi

Répondre à solex81
Collection CommentÇaMarche.net