[ksh] L'equivalent de "Echo Off" pour ksh

L'equivalent de "Echo Off" pour ksh [ksh] - Shell/Batch - Programmation

Marsh Posté le 12-10-2005 à 17:49:07    

Rebonjour,
 
dans un ksh, j'aimerai que les appels à mes différents programmes n'apparaissent pas à l'écran. Sous DOS, j'avais "echo off". Existe t-il un équivalent pour ksh ?  
 
Merci pour tout

Reply

Marsh Posté le 12-10-2005 à 17:49:07   

Reply

Marsh Posté le 12-10-2005 à 17:56:24    

Euuh... par défaut la commande exécutée ne s'affiche pas.
 
C'est pour le contraire qu'il faut travailler, pour afficher une commande exécutée dans un shell-script il faut en faire un echo puis l'exécuter. [:dao]


Message édité par Elmoricq le 12-10-2005 à 17:56:51
Reply

Marsh Posté le 12-10-2005 à 19:38:44    

ou faire un set -x

Reply

Marsh Posté le 12-10-2005 à 19:49:37    

couak a écrit :

ou faire un set -x


 
Ah ouais, je ne connaissais pas.  [:romf]  
 
Bon en même temps c'est le genre de comportement qu'on n'utilise pas tous les jours, mais ça peut être drôlement utile à connaître.

Reply

Marsh Posté le 12-10-2005 à 21:29:16    

Bon j'ai du mal m'exprimer.
 
J'ai un ksh qui appel d'autres ksh très bavard
 
J'aimerai que lors de ces appels, rien n'apparaisse à l'écran.

Reply

Marsh Posté le 12-10-2005 à 21:33:38    

guda a écrit :

Bon j'ai du mal m'exprimer.
 
J'ai un ksh qui appel d'autres ksh très bavard
 
J'aimerai que lors de ces appels, rien n'apparaisse à l'écran.


 
Redirection du flux standard vers un fichier de log, ou vers /dev/nul (me souvient jamais si c'est nul ou null d'ailleurs, contaminé par le C).
 
Exemples :

script.ksh > fichier_de_log
 
script.ksh > /dev/nul


 

Reply

Marsh Posté le 13-10-2005 à 13:02:14    

Elmoricq a écrit :

Redirection du flux standard vers un fichier de log, ou vers /dev/nul (me souvient jamais si c'est nul ou null d'ailleurs, contaminé par le C).
 
Exemples :

script.ksh > fichier_de_log
 
script.ksh > /dev/nul



 
C'est /dev/null ;) et celà fonctionne à condition que les output soient dirigées vers STou. Si en plus certaines commandes utilisent STerr autant l'ajouter aussi de cette façon:
 

script.ksh > /dev/null 2>&1

Reply

Marsh Posté le 13-10-2005 à 13:03:57    

Deadlock a écrit :

C'est /dev/null ;) et celà fonctionne à condition que les output soient dirigées vers STou. Si en plus certaines commandes utilisent STerr autant l'ajouter aussi de cette façon:
 

script.ksh > /dev/null 2>&1



Ouais enfin si ils utilisent sterr faut espérer que c'est bien pour afficher les erreurs, et celles là vaut ptet mieux pas les rediriger [:spamafote]
 
(ou alors dans un fichier de log au cas ou)


Message édité par masklinn le 13-10-2005 à 13:04:12

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 13-10-2005 à 13:05:54    

Deadlock a écrit :

C'est /dev/null ;)


 
Mais RAH  :fou:  
J'arrive jamais à retenir si c'est un ou deux "l"  :fou:  
 

Deadlock a écrit :


et celà fonctionne à condition que les output soient dirigées vers STou. Si en plus certaines commandes utilisent STerr autant l'ajouter aussi de cette façon:
 

script.ksh > /dev/null 2>&1



 
Par contre, j'ai jamais aimé rediriger stderr vers /dev/null autre chose que le résultat d'une seule commande ou deux, et encore dans des cas précis (genre find).
Rediriger la sortie erreur de tout un script vers les abîmes... ça me fait peur  [:jofusion]
 
 
EDIT : Masklinn  [:benou_grilled]


Message édité par Elmoricq le 13-10-2005 à 13:06:53
Reply

Marsh Posté le 14-10-2005 à 22:43:41    

D'un autre cote en generale, c'est de toute facon pas super utile d'avoir stderr sans stdout, car on perd une partie du contexte.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed