Welcome, Guest. Please Login or Register
FUG-FR logo
 
  HomeHelpSearchLoginRegister  
 
Pages: 1 2 
Supprimer les crtl ^M par lot (Read 12784 times)
kermitt
Full Member
***
Offline


Relax

Posts: 249
974
Gender: male
Supprimer les crtl ^M par lot
24. Mar 2007 at 08:44
 
Un petit script pour virer les caractères indésirables...

#!/bin/bash
#
#*********************************************************************
# fichier : dosUnix.sh
# description : Conversion de fichiers DOS en fichier UNIX
# (suppression des ctrl M)
#*********************************************************************
if [ $# -gt 0 ]; then
        i=1
        for param in $*; do
##              ($i) :  $param
# Traitement
               cat $param | tr -d '\r' >$param.new
# Sauvegarde
               cp $param $param.bak
# Remplacement
               mv $param.new $param
               i=`expr $i + 1`
       done
else
    echo 'ATTENTION !!!  '
    echo 'usage: '$0 '<nom de fichier ...>'
    echo 'Vous avez donné: '$# 'paramètre'
fi

# fin du script
Back to top
 
WWW WWW  
IP Logged
 
Marck
God Member
*****
Offline


I Love New YaBB

Posts: 1113
Re: Supprimer les crtl ^M par lot
Reply #1 - 24. Mar 2007 at 12:53
 
Salut

En lisant ton script, je me disais que j'avais déjà "vu cela" quelque part dans les ports ; j'ai retrouvé.

cat /usr/ports/converters/unix2dos/pkg-descr
unix2dos and dos2unix are utilities that convert ASCII files from the DOS cr/lf format to the UNIX lf format

Bref il y a les deux commandes: dos2unix et unix2dos

Ceci dit rien n'empêche d'utiliser un script maison... c'est d'une certaine façon plus sympathique  Smiley
Back to top
 
WWW WWW  
IP Logged
 
jc1
God Member
*****
Offline


BSD For Ever !!

Posts: 845
Un coin en France
Gender: male
Re: Supprimer les crtl ^M par lot
Reply #2 - 24. Mar 2007 at 14:10
 
Bonjour,

Il existe aussi des exe sous dos qui font aussi cela.
Je pensais que le problème était seulement dans le sens unix => dos et pas dans le sens contraire.


Est-ce que ce script ne pourrait pas figurer sur le wiki pour que cela ne se perde pas ?
Back to top
 

"Ils ignoraient que c'était impossible, alors ils l'ont fait" Marc Twain
"Do or do not. There is no try" Yoda Senseï
WWW WWW jc1  
IP Logged
 
ros
Global Moderator
*****
Offline



Posts: 868
Paris
Gender: male
Re: Supprimer les crtl ^M par lot
Reply #3 - 24. Mar 2007 at 15:16
 
il existe 2 outils
  • unix2dos avec son dos2unix
  • et dosunix .

    L'un des deux permet de recuperer un flux l'autre réclame un fichier en sortie
  • Back to top
     

    " Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes "
    WWW WWW elfato_99  
    IP Logged
     
    kermitt
    Full Member
    ***
    Offline


    Relax

    Posts: 249
    974
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #4 - 24. Mar 2007 at 18:59
     
    jc1 wrote on 24. Mar 2007 at 14:10:
    Bonjour,
    Est-ce que ce script ne pourrait pas figurer sur le wiki pour que cela ne se perde pas ?


    No problème ; je te laisse le soin de le publier si tu en as envie.

    Quote:
    il existe 2 outils 
    # unix2dos avec son dos2unix
    # et dosunix .


    Mdr... je me suis cassé le C. pour rien !!
    Back to top
     
    WWW WWW  
    IP Logged
     
    jc1
    God Member
    *****
    Offline


    BSD For Ever !!

    Posts: 845
    Un coin en France
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #5 - 24. Mar 2007 at 19:52
     
    Bonjour,

    @kermitt : ok, je vois tout le monde si cela convient.

    Est-ce que cela vaut la peine de mettre ce script sur le wiki ou il faut mieux utiliser les softs de ros ?

    Si l'on garde, je veux bien m'occuper de le mettre sur le wiki.
    Back to top
     

    "Ils ignoraient que c'était impossible, alors ils l'ont fait" Marc Twain
    "Do or do not. There is no try" Yoda Senseï
    WWW WWW jc1  
    IP Logged
     
    Marck
    God Member
    *****
    Offline


    I Love New YaBB

    Posts: 1113
    Re: Supprimer les crtl ^M par lot
    Reply #6 - 24. Mar 2007 at 20:44
     
    En fait le sujet est un classique et on trouve çà et là de multiples méthodes. Par exemple:
    http://www.lea-linux.org/cached/index/Trucs:Supprimer_les_%5EM_dans_les_fichiers...

    Donc je ne pense pas qu'il soit très utile d'ouvrir une page sur le sujet pour le wiki... mais si vous pensez le contraire... pourquoi pas Smiley
    Back to top
     
    WWW WWW  
    IP Logged
     
    patrick
    Senior Member
    ****
    Offline


    Les pixels au peuple

    Posts: 398
    Re: Supprimer les crtl ^M par lot
    Reply #7 - 27. Mar 2007 at 13:27
     
    kermitt wrote on 24. Mar 2007 at 08:44:
    Un petit script pour virer les caractères indésirables...

    #!/bin/bash
    #


    Doit y avoir une erreur, j'ai pas de fichier /bin/bash sur mon FREEBSD...
    Back to top
     
     
    IP Logged
     
    shes
    Global Moderator
    *****
    Offline


    Et qemu c'est du flan?

    Posts: 178
    Geneva
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #8 - 27. Mar 2007 at 14:29
     
    Bash n'est pas installé par défaut sur freebsd. Tu peux trouver bash dans /usr/ports/shells/bash
    Il est d'ailleurs aussi étonnant d'appeler bash depuis /bin (ce qui est d'ailleurs une très bonne chose)

    Par defaut, bash s'install dans /usr/local/bin
    [shes@mae ~]$ whereis bash
    bash: /usr/local/bin/bash /usr/local/man/man1/bash.1.gz /usr/ports/shells/bash
    Back to top
     

    ...&&Dirty Freebsd: http://www.freebsders.org/.
    WWW WWW  
    IP Logged
     
    Cyclope
    Junior Member
    **
    Offline


    FreeBSD powaa !

    Posts: 66
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #9 - 27. Mar 2007 at 16:37
     
    En parlant de shell, quelqu'un a un article ou une explication sur les différences fondamentales/historiques entre csh, sh, bash et autres shells ?


    @kermitt : merci pour le script Wink
    Back to top
     
    WWW WWW Cyclope  
    IP Logged
     
    olivierd
    Junior Member
    **
    Offline


    FreeBSD

    Posts: 94
    Vaucluse
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #10 - 27. Mar 2007 at 19:27
     
    Bonsoir,

    Pour éviter toutes ambiguités, on peut remplacer #! /bin/bash par #! /bin/sh. Car dans le script rien n'est vraiment spécifique au bash.
    Sinon si tu tiens au bash #! /usr/bin/env bash
    Back to top
     
     
    IP Logged
     
    patrick
    Senior Member
    ****
    Offline


    Les pixels au peuple

    Posts: 398
    Re: Supprimer les crtl ^M par lot
    Reply #11 - 27. Mar 2007 at 20:06
     
    olivierd wrote on 27. Mar 2007 at 19:27:
    Bonsoir,

    Pour éviter toutes ambiguités, on peut remplacer #! /bin/bash par #! /bin/sh. Car dans le script rien n'est vraiment spécifique au bash.
    Sinon si tu tiens au bash #! /usr/bin/env bash


    Voilà ! Le seul shell sur lequel on peut compter pour les scripts et /bin/sh, et je ne vois pas pourquoi on ferait des scripts à base de bash (sauf spécificité vraiment nécessaire, mais ce n'est pas le cas ici).
    Back to top
     
     
    IP Logged
     
    kermitt
    Full Member
    ***
    Offline


    Relax

    Posts: 249
    974
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #12 - 29. Mar 2007 at 04:49
     
    Cyclope wrote on 27. Mar 2007 at 16:37:
    En parlant de shell, quelqu'un a un article ou une explication sur les différences fondamentales/historiques entre csh, sh, bash et autres shells ?


    Back to top
     
    WWW WWW  
    IP Logged
     
    fgudin
    Global Moderator
    *****
    Offline


    PouetPouetBSD roul3z

    Posts: 1552
    Thonon (74)
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #13 - 29. Mar 2007 at 10:00
     
    Et on ne pouvait pas laisser de côté "Csh Programming Considered Harmful".
    Back to top
     
     
    IP Logged
     
    Cyclope
    Junior Member
    **
    Offline


    FreeBSD powaa !

    Posts: 66
    Gender: male
    Re: Supprimer les crtl ^M par lot
    Reply #14 - 29. Mar 2007 at 10:04
     
    Merci pour ces liens !
    Back to top
     
    WWW WWW Cyclope  
    IP Logged
     
    Pages: 1 2