Bonjour,
Je cherche pourvoir sauvegarder dans dans 2 fichiers différents la sortie standard d'un script, tout en laissant s'afficher a l'écran.
Je m'explique mieux : Lorsque j'exécute mon script, j'ai le résultat suivant a l'écran, je voudrais faire le trie dans mon résultat, c'est à dire sauvegarder la première partie du résultat dans un fichier juste avant les #
WAIT ON = 2);
------------->
et l'autre partie dans un autre fichier :
########################################################################
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 :~/exploit_slony$ perl script_slony.pl -s 1/2 -yaml CLUSTER NAME = mon_cluster; node 1 admin conninfo = ' dbname=ma_base_par_defaut host=master-db01.s1.p.fti.net user=mon_user_sur_le_noeud_1 password=mon_mot_de_passe_sur_le_noeud_1 port=5432'; node 4 admin conninfo = ' dbname=ma_base_par_defaut host=slave-db01.b1.p.fti.net user=mon_user_par_defaut password=mon_mot_de_passe_par_defaut port=5432'; node 3 admin conninfo = ' dbname=ma_base_par_defaut host=master-db01.b1.p.fti.net user=mon_user_par_defaut password=mon_mot_de_passe_par_defaut port=5432'; node 2 admin conninfo = ' dbname=ma_base_sur_le_noeud_2 host=slave-db01.s1.p.fti.net user=mon_user_par_defaut password=mon_mot_de_passe_par_defaut port=5432'; LOCK SET (ID = 1, ORIGIN = 1); MOVE SET (ID = 1, OLD ORIGIN = 1, NEW ORIGIN = 2); WAIT FOR EVENT(ORIGIN = 2, CONFIRMED = 1, WAIT ON = 2); ######################################################################## # # Stocke la configuration de la réplication Slony courante # # Le language utilisé est le YAML http://en.wikipedia.org/wiki/Yaml # # Contact : admin02@localhost - Oct 2007 # # RESPECTEZ BIEN LE FORMATTAGE (pas d'espace en fin de ligne) ######################################################################## # connect string that slony will use by default # $conninforef --- cluster: mon_cluster dbname: ma_base_par_defaut password: mon_mot_de_passe_par_defaut port: 5432 user: mon_user_par_defaut # $nodesref # information to overload default parameter ($conninforef) #ID: # host: hostname # port: port number # dbname: database name # user: username # password: password string --- 1: host: master-db01.s1.p.fti.net password: mon_mot_de_passe_sur_le_noeud_1 user: mon_user_sur_le_noeud_1 2: dbname: ma_base_sur_le_noeud_2 host: slave-db01.s1.p.fti.net 3: host: master-db01.b1.p.fti.net 4: host: slave-db01.b1.p.fti.net # map logical paths of slony replication # $logicpathsref # source: target --- - 2: 1 - 1: 3 - 3: 4 # set of tables replicated # $slony_sets # ID --- - 1
L'objectif c'est de créer une procédure avec des grep ou des sed.., l'inconvénient c'est que si on crée une procédure avec par exemple :
Avec cette idée, du coup je n'affiche plus le résultat de mon script à l'écran.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 perl mon_script.pl -s 1/2 -yaml > ma_sauvegarde
Si un sysadmin pourrait me donner un petit conseil,
Je vous remercie d'avance et m'excuse de la gêne occasionnée.
Partager