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 :

changement Batch vers Shell


Sujet :

Linux

  1. #1
    Membre du Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Octobre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Octobre 2008
    Messages : 191
    Points : 52
    Points
    52
    Par défaut changement Batch vers Shell
    Bonjour,
    Voici un code qui marche que j'ai tappé en cmd windows et que j'ai legerement modifié avec les commandes linux que je connaissais. J'aimerais le faire passer en shell et qu'il marche biensur

    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
    27
    28
    29
    30
    31
    32
    33
    34
    #bin/bash
    
    cd /root/Desktop
    ./ibm_rhel4.exe
    cd /root/Desktop/SpiralAFServ
    rm /root/IBM_Support/*.xml.gz
    java -jar recupIBM.jar
    cd /root/Desktop/SpiralAFserv
    java -jar SpiralAFservWin3.jar
    cd /root/Desktop/SpiralAFServ
    for /F "delims=," %%i in ('ipconfig /all^|find "Adresse IP"') do set IP=%%i
    echo %IP%
    set IP=%IP:~44,15%
    echo %IP%
    
    cd /root/Desktop/SpiralAFServ/as
    
    zip -r %IP%as.zip *.html
    
    cd /root/Desktop/SpiralAFServ/pagesgenere
    zip -r %IP%pg.zip *.html
    cd C:\SpiralAFServ
    cd as
    ftp -s:envoi.txt ftp.spiralnet.net
    rm *as.zip
    cd /root/Desktop/SpiralAFServ
    cd pagesgenere
    ftp -s:envoi2.txt ftp.spiralnet.net
    rm *pg.zip
    
    echo "Bravo!"
    
    exit
    ce code recupere des pages, les zip, les envoi sur un serveur ftp, et les supprime du disque local. La partie que j'ai mis en rouge est une partie qui prend laddresse IP du PC pour la mettre dans le nom du fichier zip...vu que je ne connais presque rien en linux c'est un peu compliqué pour moi
    Merci beaucoup pour votre aide parce que la je suis un peu bloqué...

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Bjr,
    Pour récupérer l'ip (une façon de procéder):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    IP=$(ifconfig eth0 | sed -n '/inet adr/{s/.*inet adr:\(.*\) Bcast.*$/\1/;p}')
    echo $IP
    ou sans utiliser sed (qui est un peu compliqué au début):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ifconfig eth0 | grep "inet adr" | cut -d ':' -f2 | cut -d ' ' -f1
    eth0 est à modifier selon ton branchement (ethernet, wifi, ...).Lancer ifconfig pour le savoir.

  3. #3
    Membre du Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Octobre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Octobre 2008
    Messages : 191
    Points : 52
    Points
    52
    Par défaut
    faudrait que j'utilise un truc generique qui peu s'utiliser sur n'importe quel Serveur...normalement ils sont tous en ethernet je crois. Sinon pr le reste c'est bon ou je dois rajouter des trucs?

  4. #4
    Membre du Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Octobre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Octobre 2008
    Messages : 191
    Points : 52
    Points
    52
    Par défaut
    en plus j'ai testé ton code ne marche pas

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Le code ne marche pas, tu as un retour pour ifconfig ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ~$ ifconfig eth0
    eth0      Link encap:Ethernet  HWaddr 00:13:72:0a:1d:2b  
              inet adr:192.168.1.20  Bcast:192.168.1.255  Masque:255.255.255.0
              adr inet6: fe80::213:72ff:fe0a:1d2b/64 Scope:Lien
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              Packets reçus:2242 erreurs:0 :0 overruns:0 frame:0
              TX packets:1840 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 lg file transmission:100 
              Octets reçus:2711067 (2.5 MB) Octets transmis:212696 (207.7 KB)
              Adresse de base:0xcce0 Mémoire:fe3e0000-fe400000
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ~$ ifconfig eth0 | grep "inet adr" | cut -d ':' -f2 | cut -d ' ' -f1
    192.168.1.20

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    <digression pseudo-philosophique>
    le langage influe sur le raisonnement
    les mots et les relations entre eux forment notre raisonnement

    tenter de "traduire" ex abrupto un process(us) d'un langage à un autre, n'est pas la meilleure manière de procéder : raisonner "logiquement", puis, apprendre/utiliser un autre langage pour appliquer cette "logique", paraît plus raisonnable

    </digression pseudo-philosophique>

    s/logique\([^ ]*\)/algorithme\1/
    ?

  7. #7
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    <digression pseudo-philosophique>
    le langage influe sur le raisonnement
    les mots et les relations entre eux forment notre raisonnement

    tenter de "traduire" ex abrupto un process(us) d'un langage à un autre, n'est pas la meilleure manière de procéder : raisonner "logiquement", puis, apprendre/utiliser un autre langage pour appliquer cette "logique", paraît plus raisonnable

    </digression pseudo-philosophique>

    s/logique\([^ ]*\)/algorithme\1/
    ?
    C'est logique ...!

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    bonjour AnsuzPeorth,

    j'ai l'intuition, qu'à terme, ce script sera exécuté par cron, et pas forcément par root :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IP=$(/sbin/ifconfig eth0 | sed -n 's/.*inet ad*r:\([^ ]*\) .*/\1/p')

  9. #9
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Bjr,
    Pourquoi tant de précautions pour l'ER ?
    La sortie de ifconfig peut différé à ce point ?
    ad*r, ca peut donc être addr, adddr ??? (je savais po !)
    Désolé si ma réponse n'était pas complète, mais je n'ai jamais gratté avec des serveurs, donc je peux pas savoir
    Je savais juste qu' ifconfig nous sort l'ip du pc.

    EDIT: J'avais mal lu l'ER, j'avais dit une conneirie

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LC_ALL=C /sbin/ifconfig
    qui sera par défaut l'attitude de cron

    adr != addr
    !

    et oui, simplement, *='0 ou plusieurs'
    => il peut, ou ne pas, y avoir un autre 'd'
    ...
    ?

  11. #11
    Nouveau membre du Club
    Inscrit en
    Mars 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LC_ALL=C /sbin/ifconfig
    qui sera par défaut l'attitude de cron
    Ben merde alors ...
    La locale C correspond à quoi ? Pourquoi ca change ?(j'ai aussi RX devant Packets en plus !)

    ps: par contre, c'est vrai, je n'ai pas était assez prudent pour l'ER
    \([^ ]*\) est plus sure, bien qu'en l'état, cela fonctionnait !
    EDIT: Je viens d'essayer, en locale fr = adr, autre = addr
    EDIT2: pfff, quel con je suis adresse, address ...tin, des fois !

  12. #12
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 739
    Points : 31 068
    Points
    31 068
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    j'ai l'intuition, qu'à terme, ce script sera exécuté par cron, et pas forcément par root :
    Ce serait même extrêmement conseillé qu'il en soit ainsi...

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    J'ai admis (c'est mal ) sans trop me poser de questions, qu'il s'agit de la langue par défaut du système, ou du compilateur, ou...
    ?
    Cstem?system? ?

    si quelqu'un a une (in|con)firmation...

  14. #14
    Membre du Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Octobre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Octobre 2008
    Messages : 191
    Points : 52
    Points
    52
    Par défaut
    Bon et donc moi je fais quoi?

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 596
    Points : 19 481
    Points
    19 481
    Par défaut
    toi, tu forces la langue par défaut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Lang=C ifconfig $if | sed...
    comme j'ai montré.

    de cette façon, cela ne vaudra que pour ifconfig

  16. #16
    Membre du Club
    Homme Profil pro
    Webmarketer
    Inscrit en
    Octobre 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmarketer

    Informations forums :
    Inscription : Octobre 2008
    Messages : 191
    Points : 52
    Points
    52
    Par défaut
    non c bon jai repris le code et en fait c'était pas eth0 c'était lo

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] [Tutoriel] Passage de paramètres depuis Batch vers Excel
    Par Jean-Philippe André dans le forum Excel
    Réponses: 9
    Dernier message: 08/06/2020, 17h55
  2. Changement DNS vers Infomaniak
    Par stephdemars dans le forum 1&1
    Réponses: 1
    Dernier message: 10/05/2011, 22h53
  3. batch vers c
    Par darkwall_37 dans le forum C
    Réponses: 2
    Dernier message: 16/10/2007, 16h20

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