Uma nova versão do utilitário de console Nomenus-rex está disponível, projetada para renomear arquivos em massa. O programa é escrito em C++ e distribuído sob os termos da licença GPLv3. As regras de renomeação são configuradas usando um arquivo de configuração. Por exemplo: source_dir = "/home/user/work/source"; destino_dir = "/home/usuário/trabalho/destino"; keep_dir_estrutura = falso; copy_or_rename = "copiar"; regras = ( { tipo = "data"; formato_data = "%Y-%m-%d"; }, { tipo = "texto"; texto = "_"; }, { tipo = "dir"; // modo = “caminho inteiro”|”somente diretório pai” mode = “caminho inteiro”; separator = “-“; }, { type = “text”; text = “_”; }, { type = “integer”; // mode = "global"|"local em cada diretório" mode = "local em cada diretório"; start = 0; step = 1; padding = 5; }, { type = "extension"; // deixa a variável "ext" vazio para usar uma extensão original ext = ""; // mode = "lowercase"|"uppercase"|"sic"; mode = "lowercase"; } );
Ao usar as configurações especificadas, o utilitário renomeará o arquivo “/home/user/work/source/TestDir2/file2.txt” para “/home/user/work/destination/2022-03-16_TestDir2_0.txt”. O utilitário também pode trabalhar com os diretórios HOME e XDG_CONFIG_HOME (onde procura um arquivo de configuração se o let completo não for especificado para ele) e entende a abreviatura “~” para acessar o diretório inicial.
Mudanças na nova versão:
- Foi adicionado um novo tipo de “regra” que toma o nome incompleto atual como parâmetro. Isso nos permitiu adicionar uma regra de substituição, que substitui todas as ocorrências de uma substring por uma nova string.
- Os nomes dos arquivos agora são classificados em ordem alfabética antes do processamento. Anteriormente, os arquivos eram processados na ordem em que eram fornecidos pelo sistema de arquivos. Na próxima versão esta classificação será controlada pelo usuário.
- A documentação foi ligeiramente reformulada, tornando-a mais conveniente.
- Mudanças internas no código (início da criação de testes e uma nova função de template para leitura de variáveis enum de um arquivo de configuração) que visam facilitar a adição de novas regras e reduzir o número de novos erros.
Fonte: opennet.ru