2011-07-11 4 views
0

Je suis coping certains fichiers, Donc, le résultat peut être de toute façon.la journalisation unix "cp" (copie) réponse de la commande

par exemple:

>cp -R bin/*.ksh ../backup/

>cp bin/file.sh ../backup/bin/

Lorsque j'exécute commandes ci-dessus, ça devient copier. Aucune réponse du système, si elle a été copiée avec succès. Sinon, imprime l'erreur ou la réponse dans le terminal lui-même cp: file.sh: No such file or directory.

Maintenant, je veux enregistrer le message d'erreur, ou s'il réussit, je veux enregistrer mon message personnalisé dans un fichier. Comment puis-je faire?

Toute aide en effet.

Merci

Répondre

2

essayer d'écrire dans un script shell:

#these three lines are to check if script is already running. 
#got this from some site don't remember :(

ME=`basename "$0"`; 
LCK="./${ME}.LCK"; 
exec 8>$LCK; 

LOGFILE=~/mycp.log 

if flock -n -x 8; then 

    # 2>&1 will redirect any error or other output to $LOGFILE 

    cp -R bin/*.ksh ../backup/ >> $LOGFILE 2>&1 

    # $? is shell variable that contains outcome of last ran command 
    # cp will return 0 if there was no error 
    if [$? -eq 0]; then 
     echo 'copied succesfully' >> $LOGFILE 
    fi 
fi 
+0

merci beaucoup :)) qui est ce que je voulais –