我有下面的代碼..的Linux腳本錯誤返回代碼
while read copy
do
cp -v $copy | tee -a $LOGFILE
echo $?
if [[ $? -ne 0 ]]
then
echo "Error copying files. Exiting ..." | tee -a $LOGFILE
exit 1
fi
done < copy_new_files.tmp
..我想腳本停止,如果一個文件不能被複制的錯誤,如拒絕的權限。
從腳本的輸出不產生對被拒絕的錯誤權限錯誤代碼..
+ read copy
+ cp -v acts035.fmt /home/test/gp/efin/source/pl/acts035.fmt
cp: cannot create regular file `/home/test/gp/efin/source/pl/acts035.fmt': Permission denied
+ tee -a /home/test/gp/efin/fixes/12345/efin_fix_copy_12345.log
`acts035.fmt' -> `/home/test/gp/efin/source/pl/acts035.fmt'
+ echo 0
0
我怎樣才能拿到劇本暫停,如果有一個錯誤?
非常感謝。
這'權限denied'提示你沒有權限在日誌文件中寫入。 – fedorqui
使用'$?'兩次看起來很可疑。 'echo $?'改變它。也許你應該在使用它之前存儲這個值。 – andrjas
如果您需要在交互式模式下的暫停這足以寫的,而不是'出口1'像'讀ppppp'線。當你想要前進時按回車 – Hastur