Mover arquivos baixados com base em critérios

3

Depois de baixar programas de TV e filmes, eu gostaria que eles fossem automaticamente movidos para duas pastas separadas (chamadas "programas de TV" e "Filmes"). Eu sei que há um monte de programas que você pode fazer isso no windows / osx, mas não tenho certeza sobre o Ubuntu. Se não há nenhum para o Ubuntu seria possível fazer algum tipo de script eu mesmo?

O critério mais simples que eu pensei seria classificar arquivos de vídeo com mais de 1 hora de duração para a pasta de filmes, de modo que seria totalmente automático. Eu sempre poderia fazer um comentário sobre o torrent como "movie" e depois ler isso com um script, talvez?

Alguma dica seria muito apreciada, obrigado!

    
por cohen 28.02.2012 / 10:20

1 resposta

1

Este script deve dar-lhe algo para começar. Ele faz um trabalho decente ao mover vídeos ( .mp4 e .mkv , mas você pode adicionar mais) por mais de 1 hora para ~/Downloads/Movies e outros para ~/Downloads/Shows .

#!/bin/bash
files=$(find -type f -name "*.mp4" -o -name "*.mkv") #include anyother formats you want
while read -r line
do
    time="$(ffmpeg -hide_banner -i "$line" 2>&1 | grep -Po '(?<=Duration: ).*(?=, start)'| cut -d : -f1)"
    if [[ $time -ge "1" ]] ; then
        if [ -d ~/Downloads/Movies ] ; then
            mv "$line" ~/Downloads/Movies
        else
            mkdir -p ~/Downloads/Movies
            mv "$line" ~/Downloads/Movies
        fi
    elif [[ $time == "00" ]] ; then
        if [ -d ~/Downloads/Shows ] ; then
            mv "$line" ~/Downloads/Shows
        else
            mkdir -p ~/Downloads/Shows
            mv "$line" ~/Downloads/Shows
        fi
    fi
done <<< "$files"

Além disso, se você estiver usando gerenciadores de torrent como Dilúvio ou Transmission ou outros que suportem a execução de scripts após a conclusão de torrents, você pode fornecer isso como o script a ser executado. Você pode ter que ajustar um pouco, se necessário.

    
por Ron 23.08.2015 / 07:21