From 246ed4febf4765f8c206b8974d8cbcd94ca2b80f Mon Sep 17 00:00:00 2001 From: VolandSZ <{E-MAIL}> Date: Mon, 15 Jun 2026 23:37:49 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B8=D1=80=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BD=D0=B5=D0=B8=D1=81?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D1=83=D0=B5=D0=BC=D1=8B=D0=B5=20?= =?UTF-8?q?=D0=B8=20=D1=81=D1=82=D0=B0=D1=80=D1=8B=D0=B5=20=D0=B1=D0=BB?= =?UTF-8?q?=D0=BE=D0=BA=D0=B8=20=D0=BA=D0=BE=D0=B4=D0=B0,=20=D0=B4=D0=BE?= =?UTF-8?q?=20Git?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- torrent_sort.sh | 157 ------------------------------------------------ 1 file changed, 157 deletions(-) diff --git a/torrent_sort.sh b/torrent_sort.sh index 81dd2ce..c267163 100644 --- a/torrent_sort.sh +++ b/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