Witam,
bardzo prosze o pomoc w edycji skryptu rozpakowujacego sciagniete archiwa, skrypt ten jest wywolywany automatycznie przez transmission po zakonczeniu pobierania torrenta:
Zainstalowalem u siebie filebota (skrypt czyszczacy nazwy fimow seriali i muzyki i przenoszace zawartosc do odpowiedniego foldera.
Jak moge dopisac wywolanie dla tego skryptu aby byl uruchamiany po zakonczeniu skryptu zamieszczonego powyzej i uruchamial sie dla katalogu z wlasnie pobranym torrentem:
wyglada to tak:
Prosze o pomoc kogos kto wie jak to wrapowac
bardzo prosze o pomoc w edycji skryptu rozpakowujacego sciagniete archiwa, skrypt ten jest wywolywany automatycznie przez transmission po zakonczeniu pobierania torrenta:
Bash:
#!/bin/sh
set -x
TR_DIR="${TR_TORRENT_DIR}"
TR_NAME="${TR_TORRENT_NAME}"
QPKG_DIR=`/sbin/getcfg Transmission Install_Path -f /etc/config/qpkg.conf`
FIND_PATH="${QPKG_DIR}/bin/find"
LOG_FILE_PATH="${QPKG_DIR}/web-gui/admin/logs/unpack.log" #PATH to store the log file, blank to disable
UNRAR_TRIGGERS="x -y -o+ -idp" #triggers for unrar operation, use this to control the info logged (see unrar command manual)
UNZIP_TRIGGERS="-o" #same as unrar but for zip.
DECOMPRESS_TO_DIR=`/sbin/getcfg unzip_unrar DECOMPRESS_TO -f ${QPKG_DIR}/conf/addons.conf` #If blank will unpack in its own directory, else will unpack to a fixed directory
ACTION_TIME=$(date +%d-%m-%Y\ %H:%M:%S)
if [ -z $DECOMPRESS_TO_DIR ]; then
DESTINATION_DIR="$TR_DIR/$TR_NAME"
else
DESTINATION_DIR="$DECOMPRESS_TO_DIR/$TR_NAME"
fi
cd "$TR_DIR"
if [ -d "$TR_NAME" ]; then
cd "$TR_NAME"
IFS=$'\n'
unset RAR_FILES i
FIND_RESULTS=`$FIND_PATH -maxdepth 1 -iname "*.rar"`
for RAR_FILE in $FIND_RESULTS; do
if [[ $RAR_FILE =~ .*part.*.rar ]]; then
if [[ $RAR_FILE =~ .*part0*1.rar ]]; then
RAR_FILES[i++]=$RAR_FILE
fi
else
RAR_FILES[i++]=$RAR_FILE
fi
done
unset IFS
unset FIND_RESULTS
if [ ${#RAR_FILES} -gt 0 ]; then
mkdir -p "$DESTINATION_DIR/$TR_NAME"
for RAR_FILE in "${RAR_FILES[@]}"; do
/opt/bin/unrar $UNRAR_TRIGGERS "$RAR_FILE" "$DESTINATION_DIR/$TR_NAME" >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unrarring $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unrarred $TR_NAME torrent" >> $LOG_FILE_PATH
fi
done
fi
IFS=$'\n'
FIND_RESULTS=`$FIND_PATH -maxdepth 1 -iname "*.zip"`
for ZIP_FILE in $FIND_RESULTS; do
ZIP_FILES[i++]=$ZIP_FILE
done
if [ ${#ZIP_FILES} -gt 0 ]; then
mkdir -p "$DESTINATION_DIR/$TR_NAME"
for ZIP_FILE in "${ZIP_FILES[@]}"; do
/opt/bin/unzip $UNZIP_TRIGGERS "$ZIP_FILE" -d "$DESTINATION_DIR/$TR_NAME" >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unziping $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unziped $TR_NAME torrent" >> $LOG_FILE_PATH
fi
done
fi
unset IFS
#in case the torrent is a file
else
#special case when the torrent name contains the archive extension
FILENAME=`${QPKG_DIR}/bin/basename "$TR_NAME" .rar`
if [ -f "$FILENAME.rar" ]; then
echo "Special rar archive found ..."
if [ -z "$DECOMPRESS_TO_DIR" ]; then
DESTINATION_DIR="${TR_DIR}/$FILENAME"
else
DESTINATION_DIR="$DECOMPRESS_TO_DIR/$FILENAME"
fi
mkdir -p "$DESTINATION_DIR"
/opt/bin/unrar $UNRAR_TRIGGERS "$FILENAME.rar" "$DESTINATION_DIR" >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unrarring $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unrarred $TR_NAME torrent" >> $LOG_FILE_PATH
fi
else
if [ -f "$TR_NAME.rar" ]; then
mkdir -p "$DESTINATION_DIR"
/opt/bin/unrar $UNRAR_TRIGGERS "$TR_NAME.rar" "$DESTINATION_DIR" >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unrarring $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unrarred $TR_NAME torrent" >> $LOG_FILE_PATH
fi
fi
fi
FILENAME=`${QPKG_DIR}/bin/basename "$TR_NAME" .zip`
if [ -f "$FILENAME.zip" ]; then
echo "Special zip archive found ..."
mkdir -p "$DESTINATION_DIR"
/opt/bin/unzip $UNZIP_TRIGGERS "$FILENAME.zip" -d "$DESTINATION_DIR" \ >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unzipping $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unziped $TR_NAME torrent" >> $LOG_FILE_PATH
fi
else
LIST_ZIP_FILE=`ls "$TR_NAME.zip" 2>/dev/null`
if [ ! -z "$LIST_ZIP_FILE" ]; then
mkdir -p "$DESTINATION_DIR"
/opt/bin/unzip $UNZIP_TRIGGERS "$LIST_ZIP_FILE" -d "$DESTINATION_DIR" >> $LOG_FILE_PATH
if [ $? -gt 0 ]; then
echo $ACTION_TIME "Error unzipping $TR_NAME torrent" >> $LOG_FILE_PATH
exit 0
else
echo $ACTION_TIME "Unziped $TR_NAME torrent" >> $LOG_FILE_PATH
fi
fi
fi
fi
Zainstalowalem u siebie filebota (skrypt czyszczacy nazwy fimow seriali i muzyki i przenoszace zawartosc do odpowiedniego foldera.
Jak moge dopisac wywolanie dla tego skryptu aby byl uruchamiany po zakonczeniu skryptu zamieszczonego powyzej i uruchamial sie dla katalogu z wlasnie pobranym torrentem:
wyglada to tak:
Bash:
#!/bin/bash
/share/HDA_DATA/.qpkg/Filebot/filebot.sh -script fn:amc "/share/HDA_DATA/Download/transmission/completed" --output "/share/HDA_DATA/Download" --log-file amc.log --action copy --conflict override -non-strict --def minFileSize=30000 artwork=n "musicFormat=Music/{n}/{t}" "seriesFormat=TV/{n}/Season {s.pad(2)}/{s00e00} - {t}" "movieFormat=FILM/{n} ({y})/{n} ({y})"
# Wywolanie napi dla katalogu /Movies /Series
/share/HDA_DATA/.qpkg/Optware/bin/napi.sh -s -c -n -f subrip --stats -l /share/HDA_DATA/Download/napi_filebot_filmy.log -lo /share/HDA_DATA/Download/Movies
/share/HDA_DATA/.qpkg/Optware/bin/napi.sh -s -c -n -f subrip --stats -l /share/HDA_DATA/Download/napi_filebot_seriale.log -lo /share/HDA_DATA/Download/Series
Prosze o pomoc kogos kto wie jak to wrapowac