我在我的脚本中使用:
tar cfh - "$SRC_DIR" --exclude-from <(find $SRC_DIR -size +$EXCLUDE_MB_FILES) | pigz -9 --quiet --keep --recursive --rsyncable > $BACKUP_TARGER_DIR/$ARC_NAME | tee $LOG_FILE
但LOG_FILE
却是空的。为什么?
答案1
分割命令:
find -L $SRC_DIR -size +$EXCLUDE_MB_FILES > $EXCLUDE_LIST 2>> $LOG_FILE
RC=$?;
if [[ $RC != 0 ]]; then
error find $RC
fi
tar cfh $TAR_FILE "$SRC_DIR" --exclude-from $EXCLUDE_LIST &>> $LOG_FILE
RC=$?;
if [[ $RC != 0 ]]; then
error tar $RC
fi
pigz -9 --quiet --keep --recursive --rsyncable $TAR_FILE &>> $LOG_FILE
RC=$?;
if [[ $RC != 0 ]] || [ ! -f $GZ_FILE ]; then
error pigz $RC
fi
mv $GZ_FILE $BACKUP_TARGER_DIR/$ARC_NAME
RC=$?;
if [[ $RC != 0 ]]; then
error mv $RC
fi