Sed et espace
Résolu
bab1812
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je n'y connais pas grand chose en langage script.
Je souhaiterai avec la commande sed ecrire un mot dans un fichier à une ligne bien précise. Jusque là j'y arrive, mais j'ai besoin de mettre un certains nombre d'espace devant le mot. Il y a t'il des caractere speciaux a mettre dans la commande ?
La commande shell est appelé a partir d"un programm fortran avec la commande "call system"
Voici le bout de programme
command= 'sed -i "8i mot" temp '
print*, 'command =',command
call system(command)
Merci de votre aide
Je n'y connais pas grand chose en langage script.
Je souhaiterai avec la commande sed ecrire un mot dans un fichier à une ligne bien précise. Jusque là j'y arrive, mais j'ai besoin de mettre un certains nombre d'espace devant le mot. Il y a t'il des caractere speciaux a mettre dans la commande ?
La commande shell est appelé a partir d"un programm fortran avec la commande "call system"
Voici le bout de programme
command= 'sed -i "8i mot" temp '
print*, 'command =',command
call system(command)
Merci de votre aide
A voir également:
- Sed espace
- Espace insécable - Guide
- Espace de stockage gmail plein - Guide
- Espace stockage google - Guide
- Liberer espace ipad - Guide
- Code ascii espace - Guide
3 réponses
Salut,
La syntaxe originale de l'insertion avec la commande
Chez moi ça marche :
La syntaxe originale de l'insertion avec la commande
ivoulait que cette instruction soit suivie d'un anti-slash. Avec Gnu-sed cette syntaxe s'est un peu perdue. Donc à essayer avec ton programme...
Chez moi ça marche :
$ cat plop
blabla
bla bla bla
bli bli
bliblibli
$ sed '3i\ mot' plop # Il y a 4 espaces après l'anti-slash
blabla
bla bla bla
mot
bli bli
bliblibli
$ sed '3i\\tmot' plop # Ici j'insère une tabulation (\t)
blabla
bla bla bla
mot
bli bli
bliblibli
Merci ça marche impeccable,
J'ai une autre question, dans ton exemple tu ne mets pas le -i derriere la commande sed. Quand je l'enleve ce -i dans ma commande ca ne fonctionne plus. Tu aurais une explication ?
Merci encore pour ton aide
J'ai une autre question, dans ton exemple tu ne mets pas le -i derriere la commande sed. Quand je l'enleve ce -i dans ma commande ca ne fonctionne plus. Tu aurais une explication ?
Merci encore pour ton aide
L'option
Dans mon exemple je ne l'ai pas mis histoire que la sortie à l'écran soit conforme à tes attentes, par contre le fichier d'origine reste inchangé.
Pour une modification dudit fichier il faut obligatoirement utiliser l'option
Une bonne habitude à prendre c'est aussi de rajouter à cette option un suffixe (
-i(in-place, à ne pas confondre avec la commande
id'insertion) sert comme son nom l'indique à modifier le fichier d'origine.
Dans mon exemple je ne l'ai pas mis histoire que la sortie à l'écran soit conforme à tes attentes, par contre le fichier d'origine reste inchangé.
Pour une modification dudit fichier il faut obligatoirement utiliser l'option
-i.
Une bonne habitude à prendre c'est aussi de rajouter à cette option un suffixe (
-i.bakpar exemple) qui crée une sauvegarde au cas ou...