Lancer une impression à partir d'un batch

Nohman

Habitué
Bonjour, je suis complètement néophyte pour la programmation de batch, j'aimerai savoir comment fait-on pour lancer l'impression de ce qui figure dans le shell, par exemple, mon bach lance un programme qui m'explique quels fichiers ont été sauvegardés, çà quel débit etc... je voudrais que le programme lance ensuite l'impression de ce rapport...

Quelqu'un peut-il m'aider svp ?

Cnnaissez vous un site ou l'on peut trouver la liste des commandes de prog pour les batchs ?

Merci d'avance
 

Johan_et_Pirlouit

Grand Maître
En quel langage ? En Néozafrolandais bas moyen ? Sur quel système ?

:merci:
 

Nohman

Habitué
bah j'en sais rien :s
mon code c'est ça, je l'ai eu sur un site pour faire des tutos, j'ai rajouté une ou deux lignes mais je sais pas quel langage c'est :s

@cls
@echo off

rem Rsync job control file
@echo lancement ok

C:\Cygwin\bin\rsync -vrtz --password-file=c:\cygwin\secret --delete /cygdrive/c/test ::test
@echo rapatriement ok

C:\Cygwin\bin\chmod -R 777 /cygdrive/c/fred
@echo modification de droit ok

pause

merci
 

Nohman

Habitué
personne pour m'aider svp ?
Sinon, si l'impression n'est pas possible je voudrai savoir si ce que le shelle va afficher depuis le lancement du programme jusqu'à sa fin peut être
stocké dans un fichier texte ?

Merci d'avance
 

boub popsyteam

Grand Maître
Si tu as cygwin d'installé pourquoi tu ne fais pas un script shell ? (.sh)

C'est du batch dos
Et tu ne peux plus acceder directement à l'imprimante maintenant ...
 

Nohman

Habitué
Le truc c'est que mon patron m'a demandé de travailler sur une version adaptée pour windows de rsync, j'avais installé cygwin pour tester d'abord avec linux et comprendre plus facilement le fonctioneement du programme.
Mais si je dois rester sous windows, je voudrais au mions pouvoir mettre le contenu du shell dans un fichier txt si c'est possible.
En plus, je ne sais absolument pas faire de script sous linux...
 

batchy

Grand Maître
dans du batch MS-DOS
Code:
>fichier.txt command /c update.bat

maitenant dans les windows > ME, faut se débrouiller avec CMD ...
 

Nohman

Habitué
ca ne marche pas, effectivement, mon batch rentre les commandes dans le cmd...

Il n'y a vraiment pas moyen de mettre tout ce que le cmd affiche du début a la fin dans un txt ?

quite à créer une fonction qui récupère le contenue du cmd et le met dans le txt...

merci d'avance
 

batchy

Grand Maître
une recherche de 5 sec me dit que mes switchs marchent aussi avec cmd, donc il suffit juste de remplacer ''command'' par ''cmd''
 

Nohman

Habitué
Désolé mais j'ai essayé mais il y a quelque chose que je ne dois pas piger :(

@cls
@echo off

REM "Rsync job control file"
@echo Lancement ok


REM "Synchronisation"
@echo Sauvegarde des dossiers en cours...

C:\Cygwin\bin\rsync -vrtz --password-file=c:\cygwin\secret --delete /cygdrive/c/test X.X.X.X::test >> C:\test.txt >fichier.txt CMD /c update.bat

@echo "Rapatriement ok" >> test.txt
@echo Sauvegarde effectuée

REM "Modification de droits"
@echo Modification des droits
C:\Cygwin\bin\chmod -R 777 /cygdrive/c/fred
@echo Modification de droit ok

@echo "Envoie du rapport de synchronisation en cours..."
C:\Cygwin\bin\rsync -vrtz --password-file=c:\cygwin\secret --delete /cygdrive/c/test.txt X.X.X.X::test

@echo Affichage du rapport :
test.txt

>fichier.txt CMD /c update.bat


pause

j'ai essayé de le mettre a ces deux endroits pour voir si l'un marchait ou pas, mon fichier texte reste vide, update.bat c'est un bat qui existe ou que je dois créer ?

Désolé mais j'débute complètement
 

batchy

Grand Maître
dans mon cas il faut deux fichier, l'un que j'ai appelé update.bat et que j'ai supposé être ton fichier de tout à l'heure, et un autre qui va appeler ton fichier et qui va tout sauvegarder dans fichier.txt pour ensuite pouvoir en disposer

donc cette ligne doit être adaptée à ton cas et mis dans un autre fichier .bat
 

Nohman

Habitué
Effectivement, ca marche nikel batchy merci,
mais les erreurs indiquées par le dos ( par exemple could not connect to X.X.X.X access denied ) ne sont pas stockée dans le txt.

Vous avez une solution pour cela ? de facon à créer un rapport complet ?

Merci d'avance :)
 

batchy

Grand Maître
c'est que ton programme envoie ces message dans le flux d'erreur standart ...
avec CMD je sait pas s'y a possibilité de rediriger ce flux ...
 

Nohman

Habitué
Arf, tant pis, si jamais qqn a une idée ^^

En tout cas merci Batchy pour tes réponses et ta patience :)
 

KangOl

Grand Maître
si, comme en unix, on redirectionne stderr avec "2>"
donc
[fixed]>fichier.txt 2> erreurs.txt CMD /c update.bat [/fixed]
 

AAymen

Nouveau membre

bONJOUR

Si vous pouvez me donner les étapes plus clairement pour avoir le journal du texte du shell
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 133
Messages
6 718 048
Membres
1 586 392
Dernier membre
jpaulNonDispo
Partager cette page
Haut