logix unix "cp" (копия) команды ответа - PullRequest
0 голосов
/ 11 июля 2011

Я копирую какой-то файл, поэтому результат может быть любым:

например:

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

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

Когда я выполняю вышеупомянутые команды, это копируется.Нет ответа от системы, если она успешно скопирована.Если нет, печатает ошибку или ответ в самом терминале cp: file.sh: No such file or directory.

Теперь я хочу записать сообщение об ошибке, или, если оно прошло успешно, я хочу записать свое собственное сообщение в файл.Как я могу сделать?

Любая помощь действительно.

Спасибо

1 Ответ

2 голосов
/ 11 июля 2011

попробуйте написать это в сценарии оболочки:

#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
...