Si poguéssim veure el codi del que estas fent podríem opinar amb
propietat.
Respecte el codi de retorn i la canalització a bash:
false | true
echo ${PIPESTATUS[0]} ${PIPESTATUS[1]}
o bé:
set -o pipefail
false | true || echo ko
Respecte fer una bitàcola (es diu així?), jo acostumo a usar el
Uff, he estat utilitzant el logsave però, és clar, aquestes utilitats
externes no són útils a l'hora de cridar funcions del mateix ShellScript.
En aquests casos faig servir:
eval Funció | tee -a bitacola.log
El problema és que quan hi ha canalitzacions (|) només arriba el
resultat de sortida
Em sembla que les matrius com PIPESTATUS només són suportades per Bash,
i no per altres intèrprets de ShellScript. Intento fer programets el més
portables possibles.
Un exemple de programet per qual recollir el codi de sortida:
#!/bin/sh
LaFuncio ()
{
ls /inexistent
Resultat=$?
2015-10-17, 10:45 (+0200); Narcis Garcia escriu:
> El problema és que quan hi ha canalitzacions (|) només arriba el
> resultat de sortida (exit code) de la última comanda (en aquest cas tee)
> i no m'entero de si la funció ha resultat en algun error.
Pots utilitzar un fitxer fifo en lloc de la
Bones,
Jo per capturar la sortida i el codi de retorn de la comanda normalment
utilitzo variables i subshells.
Si no m'equivoco ni en shell ni en bash hi ha la paraula clau "return", per
això es fa un "echo" o es captura el codi de retorn en funció de les teves
necessitats, perquè et podria
La cosa està en què la funció produeix molta informació textual (tant
stdout com stderr) per desar en una bitàcola, que és per això que es fa
servir el "tee". Sinó, seria ben senzill emetre només el numeret de sortida.
return sempre ha funcionat a les funcions.
Provisionalment, estic utilitzant
Gràcies; el «script» és molt interessant per «gravar» de fons tant
execucions com sessions interactives d'usuari.
De tota manera, tot i que ofereix el paràmetre --quiet, també enregistra
capçaleres seves.
Com que ja he implementat el logsave, segueixo amb aquest.
El què jo faig és, en un procés
mira't també "logger"
2015-10-10 19:07 GMT+02:00 Jordi Funollet :
> Potser et serveix el programa 'script' .
>
> --
> Jordi Funollet Pujol
> http://www.linkedin.com/in/jordifunollet
>
>
Potser et serveix el programa 'script' .
--
Jordi Funollet Pujol
http://www.linkedin.com/in/jordifunollet
Bones,
Jo provaria de redirigir stderr a /dev/null per veure si el comportament es
el mateix:
logsave -as bitacola.log comanda 2>/dev/null
Salut!
El dia 10/10/2015 13:06, "Narcis Garcia" va
escriure:
> Hola, fins ara, als meus programets fets en ShellScript, quan volia
El comportament és el mateix.
Gràcies.
El 10/10/15 a les 13:19, Roger Sicart ha escrit:
> Bones,
>
> Jo provaria de redirigir stderr a /dev/null per veure si el comportament
> es el mateix:
>
> logsave -as bitacola.log comanda 2>/dev/null
>
> Salut!
>
> El dia 10/10/2015 13:06, "Narcis
2015-10-10, 12:48 (+0200); Narcis Garcia escriu:
> Hola, fins ara, als meus programets fets en ShellScript, quan volia
> enregistrar per bitàcola la sortida d'una comanda ho feia amb la
> utilitat «tee»:
>
> comanda 2>&1 | tee -a bitacola.log
>
> Ara he trobat l'eina «logsave» que facilita la
No em val la pena recompilar, perquè el programet meu el faig servir en
ordinadors recent instal·lats i utilitzant únicament els executables
dels ordinadors nets (en diferents arquitectures);
www.actiu.net/peinddd
Estic optant per processar la bitàcola «bruta» apart, i annexar-la
després a la
Hola, fins ara, als meus programets fets en ShellScript, quan volia
enregistrar per bitàcola la sortida d'una comanda ho feia amb la
utilitat «tee»:
comanda 2>&1 | tee -a bitacola.log
Ara he trobat l'eina «logsave» que facilita la interacció:
logsave -as bitacola.log comanda
Però resulta que a
Bones,
Al codi font del programa original s'escriu la data a l'inici i al final
dels logs de la comanda, com tu mostra es al teu email.
El programa està fet en C i es bastant senzill, podries descarregar-lo,
esborrar les 4 línies que sobren i recompilarlo, tot i que no se si val la
pena...
Apa!
logsave també permet estalviar alguna anomalia de text amb caràcters
especials, com quan hi ha controls de progrés %.
El 10/10/15 a les 13:19, Ernest Adrogué ha escrit:
> 2015-10-10, 12:48 (+0200); Narcis Garcia escriu:
>> Hola, fins ara, als meus programets fets en ShellScript, quan volia
>>
16 matches
Mail list logo