Redirection totalite script shell

Résolu
floppy -  
 floppy -
Bonjour,

J'ai un script shell (xxxx.sh) qui s'exécute sur un tru64.
Celui-ci est lancé depuis un batch (xxxx.cmd) sur un windows XP via la commande putty....

Est-il possible de redigirer directement le resultat du shell dans un fichier sur la machine windows où est lancé le batch car si je redirige a l'interieur du ".sh" je peux seulement redigirer sur ce serveur??

Merci d'avance...


A voir également:

11 réponses

mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Uniquement sur le serveur. Une autre solution consiste à appeler la commande de la machine distante depuis la machine locale en la passant en paramètre à ssh.

Exemple :

ssh login@host commande 1> out.txt 2> err.txt


Si tu utilises une clé ssh on peut tout à fait imaginer une script qui combine des commandes lancées en local et d'autre sur la machine distante (et précédées de ssh login@host).

Bonne chance
0
floppy
 
Je suis pas sur que c'est ce que je recherche car je n'est pas la commande ssh sur windows.
Mais je vais donner quelques précisions.

Depuis mon poste windows XP. J'exécute ce batch:
putty -ssh -P 22 -pw %MDP% %USER%@%IP% -m shell.sh

Le probleme est le suivant:
si je mets ceci:
putty -ssh -P 22 -pw %MDP% %USER%@%IP% -m shell.sh >%log% 2>&1
ce n'est pas le resultat du shell que j'ai dans la log mais le resultat de la commande putty.

Et si je mets les redirections dans le shell unix (xxxxx.sh) la log se met sur le serveur où est exécuté ce shell.

Est-il possible d'avoir la log du shell unix directement sur mon poste XP???
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Je suis pas sur que c'est ce que je recherche car je n'est pas la commande ssh sur windows.
Mais je vais donner quelques précisions.

Depuis mon poste windows XP. J'exécute ce batch:
putty -ssh -P 22 -pw %MDP% %USER%@%IP% -m shell.sh


Ceci revient aux commandes ssh auxquelles on passe une commande en paramètre. Tu peux donc adapter ton script dans cet esprit pour qu'il soit lancé par la machine windows.

Le probleme est le suivant:
si je mets ceci:
putty -ssh -P 22 -pw %MDP% %USER%@%IP% -m shell.sh >%log% 2>&1
ce n'est pas le resultat du shell que j'ai dans la log mais le resultat de la commande putty.


Oui c'est normal, le script écrit sur sa machine. Il faut donc qu'il soit lancé depuis la machine windows. Autre solution plus simple, on peut imaginer que tu complètes ton script putty pour faire une copie sur ssh pour rappatrier le log (cf scp ou équivalent)

Et si je mets les redirections dans le shell unix (xxxxx.sh) la log se met sur le serveur où est exécuté ce shell.

Tu ne peux pas t'en sortir avec des redirections.

Est-il possible d'avoir la log du shell unix directement sur mon poste XP???

Oui si le script est sur la machine windows (et corrigé en conséquence) ou si ton script windows rappatrie le log par scp.

Bonne chance
0
LUDO
 
merci pour tes reponses;

mais en effet c'est ce que je fais pour le moment.
A la suite de la commande explicité ci dessus je lance une seconde commande qui me rapatrie la log du shell qui est sur le serveur en sftp sur mon windows mais cela nécessite 2 connexions au serveur alors que je souhaiterai en avoir une seule (le temps serait divisé par 2)....

Vois tu le probleme?
Est ce possible?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Salut,

Extrait du man putty :

       -log filename
       This option makes putty log all the terminal output to 
       a file as well as displaying it in the terminal.

Ça ne ferait pas l'affaire ?
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
En complément à ce que dis zipe31, je ne vois pas pourquoi invoquer un script via putty et lancer des commandes directement sur une connexion ssh engendre deux connexions.
0
floppy
 
il ne connait pas l'option "-log"

J'ai deux connexions:
la première lance le script sur le serveur
la deuxième récupère en sftp la log
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Je valide. Comme dans tous les cas tu vas avoir plusieurs connexions ssh consécutives (et en vue d'automatiser l'exécution du script), je t'invite à regarder comment fonctionnent les clés ssh :
http://prendreuncafe.com/blog/post/2005/08/29/262-installer-sa-cle-ssh-sur-un-serveur-distant

Ainsi tu peux lancer autant de commandes ssh/scp dans ton script client que tu le souhaites, du moment que la clé est accessible, tout fonctionnera de manière transparente.

Est-ce que ton problème est résolu ?

Bonne chance
0
floppy
 
Oui oui je vois je connais le système de clés ssh mais je voulais eviter cela.
Enfin tu as raison je suis dans tous les cas obliger d'avoir 2 connections...

En tout cas merci pour l'aide...
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Bah ton soucis de deux connexions consécutives devient transparent si tu utilises des clés ssh :-) Enfin si tu connais je pense que tu as compris à quoi je pensais ;-)

Du coup, est-ce que ton problème est résolu ?
0
floppy
 
bah ce n'etait pas vraiment un problème.
C'était plutot de l'optimisation mais j'aurai du réfléchir plus longtemps a la question pour arriver a la conclusion que ce n'était pas vraiment possible.
le fait est que je vais utiliser la méthode de clefs ssh.

Donc oui le "probleme" est résolu.

Merci pour tout....
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Parfait, je marque ton sujet en résolu dans ce cas :-)
0
floppy
 
ok
0