Script .bat sous windows vers linux
Fermé
mael9
Messages postés
373
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
7 février 2018
-
20 juin 2010 à 21:36
mael9 Messages postés 373 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 7 février 2018 - 8 juil. 2010 à 15:08
mael9 Messages postés 373 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 7 février 2018 - 8 juil. 2010 à 15:08
A voir également:
- Script .bat sous windows vers linux
- Windows 7 vers windows 10 - Guide
- Fichier bat - Guide
- Clé windows 10 gratuit - Guide
- Windows 12 - Guide
- Windows ne démarre pas - Guide
3 réponses
Giorgiolino
Messages postés
253
Date d'inscription
vendredi 15 mai 2009
Statut
Contributeur
Dernière intervention
2 mars 2015
52
20 juin 2010 à 23:33
20 juin 2010 à 23:33
Bonjour,
Batch (Windows) et Bash (Linux) font référence à deux langages de scripting. Bien que les deux soient similaires, ils sont loin d'avoir une syntaxe identique.
Tu pourras trouver des informations concernant la conversion batch > bash
à cette adresse --> https://tldp.org/LDP/abs/html/dosbatch.html
Bon courage.
Batch (Windows) et Bash (Linux) font référence à deux langages de scripting. Bien que les deux soient similaires, ils sont loin d'avoir une syntaxe identique.
Tu pourras trouver des informations concernant la conversion batch > bash
à cette adresse --> https://tldp.org/LDP/abs/html/dosbatch.html
Bon courage.
dubcek
Messages postés
18718
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 mars 2024
5 616
21 juin 2010 à 07:58
21 juin 2010 à 07:58
hello
sur Linuix, tu peux faire
sur Linuix, tu peux faire
sort -R phrase.txt | head -1
mael9
Messages postés
373
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
7 février 2018
30
Modifié par mael9 le 21/06/2010 à 20:31
Modifié par mael9 le 21/06/2010 à 20:31
Merci tout le monde, je vais essayer !
EDIT :
Eux voilà ce que ça donne...
J'ai du me tromper je pense :
_______________________________________________________________________________
Et voici ce que j'ai tappé dans le terminal :
Et ce qu'il me dit :
Un nouveau code mais toujours la même erreur :
_______________________________________________________________________________
Puis j'ai essayer avec ce converteur....
http://filegod.netfirms.com/Bat2Bash.html
qui m'a transformé le fichier d'origine en ceci :
puis dans le terminal, ça donne ceci :
____________________________________________________________________________
Faut-il que je mette :
au début de mon fichier ?
EDIT :
Eux voilà ce que ça donne...
J'ai du me tromper je pense :
set +v exportlocal enableDelayedExpansion export phraseTotal=0 for /f var in ('type "phrase.txt"') do export /a phraseTotal+=1 source or . export /a LignePhrase=%%random%%%%%%%phraseTotal% export ligne=0 for /f "delims=""" %%i in ('type "phrase.txt"') do ( if !ligne!==!LignePhrase! set phrase=%%i export /a ligne+=1 ) ::Affichage de la phrase msg * %phrase%
_______________________________________________________________________________
Et voici ce que j'ai tappé dans le terminal :
mael@mael:~$ chmod +x /home/mael/Desktop/chucknorris.bat mael@mael:~$ /home/mael/Desktop/chucknorris.bat
Et ce qu'il me dit :
/home/mael/Desktop/chucknorris.bat: line 2: exportlocal : commande introuvable /home/mael/Desktop/chucknorris.bat: line 5: Erreur de syntaxe près du symbole inattendu « var » /home/mael/Desktop/chucknorris.bat: line 5: 'for /f var in ('type "phrase.txt"') do export /a phraseTotal+=1 '
Un nouveau code mais toujours la même erreur :
set +v setlocal enableDelayedExpansion export phraseTotal=0 for /f var in ('type "phrase.txt"') do export /a phraseTotal+=1 source or . export /a LignePhrase=$$random$$$$$$$phraseTotal$ export ligne=0 for /f "delims=""" $$i in ('type "phrase.txt"') do ( if !ligne!==!LignePhrase! set phrase=$$i export /a ligne+=1 ) msg * $phrase$
_______________________________________________________________________________
Puis j'ai essayer avec ce converteur....
http://filegod.netfirms.com/Bat2Bash.html
qui m'a transformé le fichier d'origine en ceci :
set +vecho off exportlocal enablermayedExpansion export phraexportotal=0 for /f %%i in ('cat "phrase.txt"') do export /a phraexportotal+=1 . export /a LignePhrase=%%random%%%%%%%phraexportotal% export ligne=0 for /f "rmims=""" %%i in ('cat "phrase.txt"') do ( if !ligne!=!LignePhrase! export phrase=%%i export /a ligne+=1 ) msg * %phrase%
puis dans le terminal, ça donne ceci :
mael@mael:~$ /home/mael/Desktop/chucknorris.bat /home/mael/Desktop/chucknorris.bat: line 1: set: +c : option non valable set: usage: set [--abefhkmnptuvxBCHP] [-o option] [arg ...] /home/mael/Desktop/chucknorris.bat: line 2: exportlocal : commande introuvable : commande introuvablechucknorris.bat: line 3: » : identifiant non valablenorris.bat: line 4: export: « /home/mael/Desktop/chucknorris.bat: line 5: Erreur de syntaxe près du symbole inattendu « %%i » /home/mael/Desktop/chucknorris.bat: line 5: 'for /f %%i in ('cat "phrase.txt'') do export /a phraexportotal+=1
____________________________________________________________________________
Faut-il que je mette :
#!/bin/sh
au début de mon fichier ?
karirovax
Messages postés
3221
Date d'inscription
dimanche 17 janvier 2010
Statut
Membre
Dernière intervention
22 juin 2016
203
21 juin 2010 à 23:10
21 juin 2010 à 23:10
Re, salut
mael9 dit :
Faut-il que je mette :
#!/bin/sh
OUI,
il ya des fautes dans votre code :
il n ya pas de /F dans la commande for et aussi la commande type , il faut la remplacer par cat
mael9 dit :
Faut-il que je mette :
#!/bin/sh
OUI,
il ya des fautes dans votre code :
il n ya pas de /F dans la commande for et aussi la commande type , il faut la remplacer par cat
mael9
Messages postés
373
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
7 février 2018
30
Modifié par mael9 le 22/06/2010 à 07:21
Modifié par mael9 le 22/06/2010 à 07:21
OK, merci
Ceci :
Me donne cette erreur :
Quel interpréteur dois-je mettre ?
et sans interpréteur :
voià ce que ça me donne :
Ceci :
#!/bin/sh set +vecho off exportlocal enablermayedExpansion export phraexportotal=0 for cat %%i in ('cat "phrase.txt"') do export /a phraexportotal+=1 . export /a LignePhrase=%%random%%%%%%%phraexportotal% export ligne=0 for cat "rmims=""" %%i in ('cat "phrase.txt"') do ( if !ligne!=!LignePhrase! export phrase=%%i export /a ligne+=1 ) msg * %phrase%
Me donne cette erreur :
bash: /home/malounet/Desktop/chucknorris.bat : /bin/sh^M : mauvais interpréteur: Aucun fichier ou dossier de ce type
Quel interpréteur dois-je mettre ?
et sans interpréteur :
voià ce que ça me donne :
malounet@Malounet:~$ /home/malounet/Desktop/chucknorris.bat /home/malounet/Desktop/chucknorris.bat: line 1: set: +c : option non valable set: usage: set [--abefhkmnptuvxBCHP] [-o option] [arg ...] /home/malounet/Desktop/chucknorris.bat: line 2: exportlocal : commande introuvable : commande introuvablechucknorris.bat: line 3: » : identifiant non valablenorris.bat: line 4: export: « /home/malounet/Desktop/chucknorris.bat: line 5: Erreur de syntaxe près du symbole inattendu « %%i » /home/malounet/Desktop/chucknorris.bat: line 5: 'for cat %%i in ('cat "phrase.tx'"') do export /a phraexportotal+=1
karirovax
Messages postés
3221
Date d'inscription
dimanche 17 janvier 2010
Statut
Membre
Dernière intervention
22 juin 2016
203
24 juin 2010 à 21:08
24 juin 2010 à 21:08
Re, bonjour
pour la commande set : ( il ya un espace entre set +v et echo off )
set +v echo off
pour interpréteur #!/bin/sh :
essayez avec #!/bin/bash
pour la commande set : ( il ya un espace entre set +v et echo off )
set +v echo off
pour interpréteur #!/bin/sh :
essayez avec #!/bin/bash
mael9
Messages postés
373
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
7 février 2018
30
26 juin 2010 à 01:02
26 juin 2010 à 01:02
Merci,
Avec ceci :
Puis en le lançant dans le terminal, j'obtiens ceci :
Avec ceci :
#!/bin/bash set +v echo off exportlocal enablermayedExpansion export phraexportotal=0 for cat %%i in ('cat "phrase.txt"') do export /a phraexportotal+=1 . export /a LignePhrase=%%random%%%%%%%phraexportotal% export ligne=0 for cat "rmims=""" %%i in ('cat "phrase.txt"') do ( if !ligne!=!LignePhrase! export phrase=%%i export /a ligne+=1 ) msg * %phrase%
Puis en le lançant dans le terminal, j'obtiens ceci :
malounet@malounet-desktop:~$ /home/malounet/Bureau/test /home/malounet/Bureau/test: line 3: exportlocal : commande introuvable /home/malounet/Bureau/test: line 6: Erreur de syntaxe près du symbole inattendu « %%i » /home/malounet/Bureau/test: line 6: 'for cat %%i in ('cat "phrase.txt"') do export /a phraexportotal+=1 '
mael9
Messages postés
373
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
7 février 2018
30
26 juin 2010 à 11:44
26 juin 2010 à 11:44
PS : en séparant par un espace export et local, il n'y a plus que les deux erreurs suivantes :
/home/malounet/Bureau/test: line 6: Erreur de syntaxe près du symbole inattendu « %%i » /home/malounet/Bureau/test: line 6: 'for cat %%i in ('cat "phrase.txt"') do export /a phraexportotal+=1 '
21 juin 2010 à 16:00
Bonne aidé Giorgiolino et bon lien aussi ;)