Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Publicado por Xerxes em 16/09/2025
[ Hits: 576 ]
Contra (USA).zip da pasta de originais se já tivermos um Contra.zip na nossa pasta de traduções.
Double Dragon (USA).zip, e remove todas as informações extras (como (USA), (Japan), (Rev 1)) e a extensão .zip, resultando em um nome "limpo", como Double Dragon.
Ctrl + Alt + T).
nano:
nano.
PASTA1="/caminho/para/sua/pasta_traduzida"
PASTA2="/caminho/para/sua/pasta_originais"
nano pressionando Ctrl + X, depois Y e, por fim, Enter.
prossiga e tecle Enter para ver sua coleção de ROMs ficar ainda mais completa!
#!/bin/bash
# --- CONFIGURAÇÃO ---
# !!! IMPORTANTE: Altere os caminhos abaixo para os caminhos corretos das suas pastas !!!
PASTA1="/media/xerxes/MMPLUS/Roms/FC"  # Pasta de destino (suas ROMs traduzidas)
PASTA2="/home/xerxes/Downloads/tiny-best-set-go-games/Roms/FC" # Pasta de origem (ROMs não traduzidas)
# --------------------
# Verifica se os diretórios existem
if [ ! -d "$PASTA1" ] || [ ! -d "$PASTA2" ]; then
    echo "❌ Erro: Um ou ambos os diretórios não foram encontrados. Verifique os caminhos no script."
    exit 1
fi
echo "Pasta de ROMs Traduzidas (Destino): $PASTA1"
echo "Pasta de ROMs Originais (Origem):  $PASTA2"
echo "-----------------------------------------------------"
echo "🔎 Fase 1: Analisando quais jogos da Pasta 2 podem ser copiados..."
echo "-----------------------------------------------------"
# Array para armazenar a lista de jogos a serem copiados
JOGOS_A_COPIAR=()
# Loop através de cada arquivo .zip na Pasta 2
for JOGO_ORIGEM in "$PASTA2"/*.zip; do
    
    # Pega apenas o nome do arquivo, sem o caminho
    NOME_ARQUIVO_ORIGEM=$(basename "$JOGO_ORIGEM")
    
    # Normaliza o nome: remove tudo a partir do primeiro parêntese ou colchete
    # e também remove a extensão .zip
    NOME_NORMALIZADO=$(echo "$NOME_ARQUIVO_ORIGEM" | sed -E 's/ \(.+\)//g; s/ \[.+\]//g; s/\.zip$//')
    
    # Verifica se um arquivo com o nome normalizado já existe na Pasta 1
    EXISTE_NA_PASTA1=$(find "$PASTA1" -maxdepth 1 -type f -name "$NOME_NORMALIZADO*.zip" | head -n 1)
    
    if [ -z "$EXISTE_NA_PASTA1" ]; then
        # Se a variável estiver vazia, o jogo não existe na Pasta 1
        echo "  [+] Adicionar à lista de cópia: '$NOME_ARQUIVO_ORIGEM'"
        JOGOS_A_COPIAR+=("$JOGO_ORIGEM")
    else
        # O jogo já existe, então não fazemos nada
        :
    fi
done
echo "-----------------------------------------------------"
echo "✨ Análise concluída!"
echo ""
# Verifica se há jogos para copiar
if [ ${#JOGOS_A_COPIAR[@]} -eq 0 ]; then
    echo "Nenhum jogo novo para copiar. Sua coleção já está completa!"
    exit 0
fi
echo "Serão copiados ${#JOGOS_A_COPIAR[@]} novos jogos para a sua coleção."
echo ""
read -p "Deseja prosseguir com a cópia? (digite 'prossiga' e pressione Enter): " CONFIRMACAO
# Verifica a confirmação do usuário
if [ "$CONFIRMACAO" == "prossiga" ]; then
    echo ""
    echo "🚀 Iniciando a cópia..."
    for JOGO_PARA_COPIAR in "${JOGOS_A_COPIAR[@]}"; do
        cp -v "$JOGO_PARA_COPIAR" "$PASTA1/"
    done
    echo ""
    echo "✅ Cópia concluída com sucesso!"
else
    echo ""
    echo "❌ Operação cancelada pelo usuário. Nenhum arquivo foi copiado."
fi
Adicionando "Criar novo arquivo" no menu do Arquivos do Gnome
Navegar como se estivesse em outro país no Ubuntu e Linux Mint
Habilitando plugin do BB no Redhat 7
Contornando bug do Nautilus no Fedora
Deixando o DNF mais veloz no Fedora
Músicas de Andrew Hulshult no DOOM (WAD)
Fazendo o Steam funcionar no openSUSE Leap 42.2
Truco4GNU: jogo de truco para Linux
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (33)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (0)









