#1 Le 18/07/2012, à 09:40
- emixam79
Ecrire une sortie du terminal dans un fichier texte
Bonjour à tous,
Je rencontre un petit soucis. J'essaye de me faire un petit script qui lance automatiquement mes calculs. Pour çà, j'aimerai que les résultats obtenus soient écrits dans un fichier texte.
Lorsque que je fais la commande:
mon script > time.txt
Il écrit tout le calcul éffectué mais ne m'écrit pas le résultat qui est affiché sur le terminal, et c'est justement cette valeur qui m'intéresse
Est-ce que quelqu'un sait comment faire?
Je vous remercie par avance
Emixam
Hors ligne
#2 Le 18/07/2012, à 09:49
- credenhill
Re : Ecrire une sortie du terminal dans un fichier texte
hello
affiche ET écrit dans le fichier
mon script | tee time.txt
Hors ligne
#3 Le 18/07/2012, à 09:57
- emixam79
Re : Ecrire une sortie du terminal dans un fichier texte
Merci de ta réponse, mais il ne veut toujours pas :'(
Hors ligne
#4 Le 18/07/2012, à 10:13
- credenhill
Re : Ecrire une sortie du terminal dans un fichier texte
et
mon script 2>&1 | tee time.txt
Hors ligne
#5 Le 18/07/2012, à 10:24
- emixam79
Re : Ecrire une sortie du terminal dans un fichier texte
Toujours pas!!
Je ne comprends vraiment pas comment faire!!
Sinon, j'avais pensé à:
lancer le calcul 1 sur le terminal 1
une fois que c'est finit lancer le calcul 2 sur le terminal 2
etc...
Pensez vous que c'est possible?
PS: je ne cherche pas un truc optimiser, je veux juste que mes calculs tournent pendant la nuit!!
Hors ligne
#6 Le 18/07/2012, à 10:55
- credenhill
Re : Ecrire une sortie du terminal dans un fichier texte
je n'ai pas tout saisi quel est le problème.
pour lancer un script la nuit, utiliser at
echo "mon script 2>&1 > time.txt" | at 0300
Hors ligne
#7 Le 18/07/2012, à 11:21
- claudius01
Re : Ecrire une sortie du terminal dans un fichier texte
Hors ligne
#8 Le 18/07/2012, à 11:56
- emixam79
Re : Ecrire une sortie du terminal dans un fichier texte
Je vais essayer avec strace!
Mon soucis, c'est que je dois lancer plusieurs fois une commande et qu'il me prends énormément de temps à tourner et que je ne peux les lancer que un a un.
Ce que j'aimerai c'est me faire un script qui lance cette commande une fois qu'un des calculs est finit, pour que mes calculs tournent meme quand je ne suis pas là...
Je ne sais pas si j'arrive à etre clair
Hors ligne
#9 Le 18/07/2012, à 13:01
- claudius01
Re : Ecrire une sortie du terminal dans un fichier texte
Re,
Je ne sais pas si j'arrive à etre clair
Question: Ce ou ces scripts délèguent-ils certains traitements à des programmes qui pourraient redéfinir le stdout et/ou le stderr ou l'ensemble des traitements est-il du type scripting ?
- Si entièrement scripting, il y a fort à parier qu'une redirection de stdout / stderr vers /dev/null voire vers un fichier est fait quelque part (à vérifier ;-)
- Si délégation à d'autres programmes, cela va être plus corsé sauf si c'est toi qui a la main dessus...
Toujours est-il que, sauf erreur de ma part, seul strace (ou équivalent) te montrera les accès aux stdxxx, aux fichiers et repéra le résultat tant attendu :
...
write(2, "Sortie sur stderr...\n", 21Sortie sur stderr...
write(1, "Sortie sur stdout\n", 18Sortie sur stdout
write(4, "Sortie dans un fichier..., 4096) = 4096
...
Cordialement, A+
--
Claudius
Hors ligne
#10 Le 18/07/2012, à 13:05
- credenhill
Re : Ecrire une sortie du terminal dans un fichier texte
comme ça, ils vont s'exécuter l'un après l'autre
script1 > log1; script2 > log2; script3 > log3 ...
ou
(script1; script2; script3) > log
Hors ligne
#11 Le 23/07/2012, à 13:26
- emixam79
Re : Ecrire une sortie du terminal dans un fichier texte
Bonjour à tous,
Désolé de cette réponse tardive. J'ai testé avec vos commandes, mais n'étant pas très doué j'ai eu des bugs
j'ai trouvé la solution en écirant:
mon script > res_ecran > ./time.txt
Merci de votre aide en tout cas !!!
Hors ligne
#12 Le 23/07/2012, à 15:11
- johndo
Re : Ecrire une sortie du terminal dans un fichier texte
mouais, je reste perplexe
je ne serais pas étonné que tu reviennes en disant "finalement, non, ça ne marche pas !"
Hors ligne