IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Comment coder ce script de linux vers unix services mvs


Sujet :

Linux

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Comment coder ce script de linux vers unix services mvs
    Bonjour,
    Comment coder ce script linux pour qu'il puisse s'exécuter sur la couche unix de mvs (USS) ? Actuellement je ne peux le faire tourner que sous linux / unix et j'ai besoin de le faire tourner sous USS.
    Merci d'avance pour votre aide
    Philippe
    Voici le script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    #!/bin/bash
    #set -x
     
    for FILE in $(find "./" -name "*.tar" -type f);
    do
       tar -xf $FILE
       for FILP in $(find "./" -name "*.pdf" -type f );
       do
         BFILP=`basename ${FILP} 2>&1`
         CAB=`echo ${BFILP} | cut -d"_" -f1`
          CABF=`echo ${CAB} | cut -d"-" -f2`
         NUMP=`echo ${BFILP} | cut -d"_" -f2`
          NUMPF=`echo ${NUMP}  | cut -d"." -f1`
         DATELOT=`echo ${BFILP} | cut -d"=" -f1`
          JJ=`echo ${DATELOT} | cut -c1,2`
          MM=`echo ${DATELOT} | cut -c3,4`
          AA=`echo ${DATELOT} | cut -c5,6`
         NUMLOT=`echo ${BFILP} | cut -d"=" -f2`
          NUMLOTF=`echo ${NUMLOT} | cut -d"-" -f1`
         DATE=`date "+%d/%m/%y"`
         echo "$DATE;                             $CABF;$JJ"/"$MM"/"$AA;$NUMPF;$NUMLOTF;$CAB"_"$NUMPF.pdf" >> $FILE".csv"
         done;              
         rm ./*.pdf    
       done;
     
    exit 0

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 578
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 578
    Points : 19 441
    Points
    19 441
    Par défaut
    Bonjour,

    on ne fait pas for item in $(commande), car si commande retourne une ligne contenant des espaces, la boucle s'exécutera sur chacun des éléments de la ligne; préfère par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for file in ./*.tar
    do if [ -f "$file" ]
         then #etc
    ou alors, utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    find ./ -type f -name "*.tar" -exec bash -c 'file="$1"
    #etc
    ' _ {} \;
    on ne donne de nom tout en majuscules aux variables : c'est reservé aux variables d'environnement.

    il est recommandé d'utilisé $() plutôt que ``

    et n'oublie de mettre les variables entre guillemets.

    À part ça,
    c'est quoi le problème avec USS (que je ne connais pas) ?

Discussions similaires

  1. Comment coder un script pareil comme sur ce site ?
    Par Solpiko dans le forum Débuter
    Réponses: 0
    Dernier message: 23/05/2015, 00h03
  2. Comment convertir des fichiers texte Windows vers Unix
    Par hornetbzz dans le forum Contribuez
    Réponses: 17
    Dernier message: 11/02/2014, 14h46
  3. Conversion d'un script shell Linux vers un batch Windows
    Par captu dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 19/01/2010, 11h22
  4. Réponses: 1
    Dernier message: 24/12/2007, 18h21
  5. [Linux]différence de code de windows vers unix sous eclipse
    Par skywalker3 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 05/01/2005, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo