Убрал закомментированные неиспользуемые и старые блоки кода, до Git
This commit is contained in:
157
torrent_sort.sh
157
torrent_sort.sh
@ -32,7 +32,6 @@ log_collision() {
|
||||
echo "[$(timestamp)] [SKIP] Collision: $1" >> "$LOG_FILE"
|
||||
}
|
||||
|
||||
|
||||
# Логируем новую задачу
|
||||
log_info "----------------------------------------------"
|
||||
log_info "Torrent: $1"
|
||||
@ -141,91 +140,6 @@ if [[ $2 == 'Anime' ]]; then
|
||||
TITLE=$(echo "$TITLE" | sed -E 's/[ ]*\((BD|Web|WEB|Blu-ray).+$//')
|
||||
fi
|
||||
;;
|
||||
|
||||
|
||||
# # === ГРУППА 1: Стандартные (SubsPlease, Erai-raws, HorribleSubs) ===
|
||||
# # Формат: [Group] Title - 01 (1080p)...
|
||||
# *"[SubsPlease]"*|*"[Erai-raws]"*|*"[HorribleSubs]"*)
|
||||
|
||||
# # 1. УДАЛЕНИЕ ГРУППЫ (NATIVE BASH)
|
||||
# # Удаляем всё от начала до первой закрывающей скобки ]
|
||||
# TEMP_NAME="${BASE_NAME#*]}"
|
||||
# # Удаляем пробел в начале, если остался
|
||||
# TEMP_NAME=$(echo "$TEMP_NAME" | sed 's/^[ ]*//')
|
||||
|
||||
# # Удаляем техническую инфу в конце (1080p, Hash) ПЕРЕД анализом
|
||||
# TEMP_NAME=$(echo "$TEMP_NAME" | sed -E 's/[ ]*(\(|\[)[0-9a-zA-Z].*$//')
|
||||
# # Trim на всякий случай
|
||||
# TEMP_NAME=$(echo "$TEMP_NAME" | sed 's/^[. ,]*//;s/[. ,]*$//')
|
||||
|
||||
# # Мы разбиваем строку по ПОСЛЕДНЕМУ " - "
|
||||
# # Группа 1: Всё до тире (Название)
|
||||
# # Группа 2: Всё после тире (Потенциальный номер)
|
||||
# if [[ "$TEMP_NAME" =~ ^(.+)[[:space:]]-[[:space:]](.+)$ ]]; then
|
||||
# CANDIDATE_TITLE="${BASH_REMATCH[1]}"
|
||||
# CANDIDATE_EP="${BASH_REMATCH[2]}"
|
||||
|
||||
# # --- АНАЛИЗ ТОГО, ЧТО ПОСЛЕ ТИРЕ ---
|
||||
|
||||
# # 1. СТАНДАРТ: Начинается с цифры (01, 01.5, 01v2)
|
||||
# if [[ "$CANDIDATE_EP" =~ ^[0-9]+(\.[0-9]+)?[vV]?[0-9]*$ ]]; then
|
||||
# MODE="Episode"
|
||||
# TITLE="$CANDIDATE_TITLE"
|
||||
# EPISODE="$CANDIDATE_EP"
|
||||
|
||||
# # 2. СПЕШЛЫ: Содержит ключевые слова (Special, SP, OVA, OAD)
|
||||
# # [sS]pecial - регистронезависимый поиск первой буквы
|
||||
# # Поддерживает: "Special 01", "SP1", "OVA", "Egghead SP1"
|
||||
# elif [[ "$CANDIDATE_EP" =~ ([sS]pecial|[sS][pP]|[oO][vV][aA]|[oO][aA][dD]) ]]; then
|
||||
# MODE="Episode"
|
||||
# TITLE="$CANDIDATE_TITLE"
|
||||
# EPISODE="$CANDIDATE_EP"
|
||||
|
||||
# else
|
||||
# # После тире текст без цифр и без ключевых слов (напр. "The Last Attack")
|
||||
# # Значит это подзаголовок фильма
|
||||
# MODE="Movie"
|
||||
# TITLE=$(echo "$TEMP_NAME" | sed -E 's/[ ]*\(.+//')
|
||||
# fi
|
||||
# else
|
||||
# # Тире вообще нет
|
||||
# MODE="Movie"
|
||||
# TITLE=$(echo "$TEMP_NAME" | sed -E 's/[ ]*\(.+//')
|
||||
# fi
|
||||
# ;;
|
||||
|
||||
|
||||
# === ГРУППА 2: Hi10 и подобные (в круглых скобках) ===
|
||||
# Формат: (Hi10) Title - 01 (Quality)...
|
||||
# Или: (Hi10) Title - ED01 ...
|
||||
# *"(Hi10)"*)
|
||||
#
|
||||
# # 1. Удаляем тег группы (xxxx)
|
||||
# TEMP_NAME=$(echo "$BASE_NAME" | sed -E 's/^\(.+?\)[ ]*//')
|
||||
#
|
||||
# # 2. Паттерн сериала (тут разрешаем буквы в номере, т.к. Hi10 использует ED, NCOP)
|
||||
# if [[ "$TEMP_NAME" =~ ^(.+)[[:space:]]-[[:space:]]([a-zA-Z0-9]+) ]]; then
|
||||
# MODE="Episode"
|
||||
# TITLE="${BASH_REMATCH[1]}"
|
||||
# EPISODE="${BASH_REMATCH[2]}"
|
||||
# else
|
||||
# # Фильм
|
||||
# # Удаляем тех инфу, начинающуюся с (BD... или (1080p...
|
||||
# MODE="Movie"
|
||||
# TITLE=$(echo "$TEMP_NAME" | sed -E 's/[ ]*\((BD|1080p|720p).+//')
|
||||
# fi
|
||||
# ;;
|
||||
|
||||
# === ГРУППА 3: Китайские/Нумерованные [01] ===
|
||||
# "["[0-9][0-9]"]"*|"["[0-9][0-9][0-9]"]"*)
|
||||
# # Регулярка вытаскивает номер из скобок
|
||||
# if [[ "$BASE_NAME" =~ ^\[([0-9]+)\][[:space:]]*(.+) ]]; then
|
||||
# MODE="Episode"
|
||||
# EPISODE="${BASH_REMATCH[1]}"
|
||||
# TITLE="${BASH_REMATCH[2]}"
|
||||
# fi
|
||||
# ;;
|
||||
|
||||
# === FALLBACK: Если группа неизвестна ===
|
||||
*)
|
||||
MODE="Unsorted"
|
||||
@ -280,72 +194,6 @@ if [[ $2 == 'Anime' ]]; then
|
||||
echo "=== Anime Info: $TITLE ===" > "$INFO_TXT"
|
||||
fi
|
||||
|
||||
# if [ ! -f "$TARGET_FILE" ]; then
|
||||
# if ln "$FILE_PATH" "$TARGET_FILE" 2>/tmp/ln_error.$$; then
|
||||
# ln "$FILE_PATH" "$TARGET_FILE"
|
||||
# if [ $? -eq 0 ]; then
|
||||
# log_info "SUCCESS ($MODE): '$FINAL_FILENAME'"
|
||||
# {
|
||||
# echo "------------------------------------------------"
|
||||
# echo "Date Processed: $(date '+%Y-%m-%d %H:%M:%S')"
|
||||
# echo "Type: $MODE"
|
||||
# echo "Episode: ${EPISODE:-N/A}"
|
||||
# echo "Linked File: $FINAL_FILENAME"
|
||||
# echo "Source File: $FILENAME"
|
||||
# echo "Source Torrent: $1"
|
||||
# } >> "$INFO_TXT"
|
||||
# else
|
||||
# ERR_MSG=$(cat /tmp/ln_error.$$)
|
||||
# rm -f /tmp/ln_error.$$
|
||||
# log_error "Link failed for '$FINAL_FILENAME' | Source='$FILE_PATH' | Target='$TARGET_FILE' | Error='$ERR_MSG'"
|
||||
# # log_error "Link failed for '$FINAL_FILENAME'. Filesystem error?"
|
||||
# fi
|
||||
# else
|
||||
# # Записываем в отдельный лог коллизий
|
||||
# log_collision "$FINAL_FILENAME" "$FILENAME"
|
||||
# fi
|
||||
|
||||
# if [ ! -f "$TARGET_FILE" ]; then
|
||||
|
||||
# TMP_ERR="/tmp/torrent_sort_ln_$$.err"
|
||||
|
||||
# if ln "$FILE_PATH" "$TARGET_FILE" 2>"$TMP_ERR"; then
|
||||
|
||||
# log_info "SUCCESS ($MODE): '$FINAL_FILENAME'"
|
||||
|
||||
# {
|
||||
# echo "------------------------------------------------"
|
||||
# echo "Date Processed: $(date '+%Y-%m-%d %H:%M:%S')"
|
||||
# echo "Type: $MODE"
|
||||
# echo "Episode: ${EPISODE:-N/A}"
|
||||
# echo "Linked File: $FINAL_FILENAME"
|
||||
# echo "Source File: $FILENAME"
|
||||
# echo "Source Torrent: $1"
|
||||
# } >> "$INFO_TXT"
|
||||
|
||||
# else
|
||||
|
||||
# LN_ERROR=$(cat "$TMP_ERR" 2>/dev/null)
|
||||
|
||||
# SRC_STAT=$(stat -c 'inode=%i uid=%u gid=%g perms=%a owner=%U group=%G' "$FILE_PATH" 2>/dev/null)
|
||||
# DST_DIR_STAT=$(stat -c 'inode=%i uid=%u gid=%g perms=%a owner=%U group=%G' "$TARGET_DIR" 2>/dev/null)
|
||||
|
||||
# log_error "Link failed for '$FINAL_FILENAME'
|
||||
#Source='$FILE_PATH'
|
||||
#Target='$TARGET_FILE'
|
||||
#ln_error='$LN_ERROR'
|
||||
#source_stat='$SRC_STAT'
|
||||
#target_dir_stat='$DST_DIR_STAT'"
|
||||
|
||||
# fi
|
||||
|
||||
# rm -f "$TMP_ERR"
|
||||
|
||||
# else
|
||||
#
|
||||
# log_collision "$FINAL_FILENAME" "$FILENAME"
|
||||
|
||||
# fi
|
||||
if [ ! -f "$TARGET_FILE" ]; then
|
||||
|
||||
if [ ! -w "$TARGET_DIR" ]; then
|
||||
@ -409,12 +257,7 @@ current_gid='$(id -g)'"
|
||||
rm -f "$TMP_ERR"
|
||||
|
||||
else
|
||||
|
||||
log_collision "$FINAL_FILENAME" "$FILENAME"
|
||||
|
||||
fi
|
||||
|
||||
|
||||
done
|
||||
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user