Script shell

Dohm -  
 dohm under linux -
Bonjour,
Est que quelqu'un connaitrait une fonction de lecture et une fonction d'écriture qui respecte les tabulations ds un fichier

merci d'avance !
( je scripte en sh )

8 réponses

  1. karl
     
    #!/bin/sh

    Salut à tous
    J'ai un fire-wall sous iptables (fonctionne). Je veux ajouter dans mon script : du lundi au vendredi je fais ça et le samedi, dimanche et jour féries je fais ça.

    Juste la date et le format (le reste est déja en exploitation
    Merci à tous
    0
  2. dohm Messages postés 983 Date d'inscription   Statut Modérateur Dernière intervention   67
     
    Ca répond pas beaucoup à ma question ça !
    ;-(

    Dohm qui vous bouleg tous
    0
    1. coppernix Messages postés 63 Statut Membre 4
       
      Il faudrait préciser ta demande.
      Avec awk tu peux lire un fichier en tenant compte des tabulations, par exemple :
      awk -F\t '{...}' fichier
      voir "man awk" ou "man gawk"


      L'expérience est une lanterne attachée dans notre dos,
      qui n'éclaire que le chemin parcouru. Confucius
      0
  3. dohm
     
    Je t'avoue que me tapper le "man" pour un petit script me saoule un peu, en fait, je cherche juste à indiquer la dernière date de modification en tête d'un fichier :

    #!/bin/sh
     
    plouf=0
    
    date > temp200032
    read line < temp200032
    temps=$line
    
    rm -f temp200032
     
    while read line
    do
        if test $plouf = 1 
        then echo $line >> temp200032 
        else  plouf=1
        fi
    done < Makefile
    
    echo "# date de dernière compilation : " $temps > Makefile
    while read line
    do
     echo $line >> Makefile
    done < temp200032
    rm -f temp200032
    
    


    en gros je supprime la première ligne, je rajoute la nouvelle et je recopie le reste de mon fichier.
    Mais en l'état, cela supprime les tabulations.
    0
  4. jisisv Messages postés 3678 Statut Modérateur 936
     
    #!/bin/sh
    MYFILE="bidon"
    TMP=/tmp/$$
    echo $TMP
    [ -f $MYFILE ] || exit 1;
    echo "#$(date)" > $TMP
    tail -n +2 $MYFILE >> $TMP
    mv $TMP $MYFILE

    Semble fontionner non?
    Johan
    The software said "Requires Windows98, Win2000, or better,
    So I installed Unix.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. coppernix Messages postés 63 Statut Membre 4
     
    Ca aussi ça marche :

    #!/bin/sh
    date=`date`
    (
    echo "/# date"
    echo "ddi# date de dernière modification : $date"
    echo "^[ZZ"
    ) | vi Makefile >/dev/null 2>&1

    J'ai le record du plus court ;-)
    L'echap ( ^[ ) s'obtient en tapant Ctrl+V et Echap

    L'expérience est une lanterne attachée dans notre dos,
    qui n'éclaire que le chemin parcouru. Confucius
    0
  7. jisisv Messages postés 3678 Statut Modérateur 936
     
    Hi,
    Oui, j'ai aussi essayé mais vim n'aime pas beaucoup
    la redirection de l'entrée standard :(
    Peut-re que le vi d'origine...
    De toute manière il reste (s)ed...

    Johan
    The software said "Requires Windows98, Win2000, or better,
    So I installed Unix.
    0
  8. coppernix Messages postés 63 Statut Membre 4
     
    Bonjour,
    Sur Redhat ou Suse, cela ne me pose aucun problème.

    L'expérience est une lanterne attachée dans notre dos,
    qui n'éclaire que le chemin parcouru. Confucius
    0
  9. dohm under linux
     
    merci ca marche, vous êtes des chefs !
    0