renameciclefile.sh

Publicado por Ricardo Brito do Nascimento 09/05/2008

[ Hits: 4.067 ]

Homepage: http://brito.blog.incolume.com.br

Download renameciclefile.sh




Muitas vezes é preciso renomear uma dezenas de arquivos, log, backup, etc. sem perder a sequência.

Este script foi criado para realizar esta tarefa repetitiva e livrar o tempo para pensar em um comando shell para realizá-la.

  



Esconder código-fonte

#!/bin/sh
# vim: set sw=4 ts=4 et:
VER="1"
USO="$0 [-h|--help|?] arquivo"
MAX=100


_help(){
    cat << fim
$0 -- renomeação seriada de arquivos
uso: $USO
opções: -h --help ? nome_do_arquivo

exemplo: $0 arq = Isto irah renomeiar todos os arquivos
    que começam. o arq -> arq.1, arq.1 -> arq.2 e criar um novo arq
    vazio.

version: $ver
limite: $MAX
fim
   exit 0
}

_error()
{
    echo "$1"
    exit 1
}

while [ -n "$1" ]; do
case $1 in
    -h|--help|?) _help;shift 1;;
    --) break;;
    -*) echo "erro: no such option $1. -h for help";exit 1;;
     *) break;;
esac
done


# verificação de input:
if [ -z "$1" ] ; then
 _error "ERRO: têm de especificar um arquivo, utiliza -h para ajuda"
fi
filen="$1"

# renomeia qualquer arquivos .1, .2, .3, etc:
for ((n=$MAX; n>=0; n--)); do 
    if [ -f $filen.$n ]; then 
        p=`expr $n + 1`; 
        echo "mv $filen.$n $filen.$p"; 
        mv $filen.$n $filen.$p; 
    fi; 
done

# renomeia o ficheiro original:
if [ -f "$filen" ]; then
   echo "mv $filen $filen.1"
   mv $filen $filen.1
   #echo checkpoint2
fi
#echo touch $filen
touch $filen

Scripts recomendados

Detecta e bloqueia tentativa de acesso ao SSH

Exemplos de scripts com dialog

Compilar Apache 2.x.x

Criação de usuários no Linux

Restaurar backup de uma conta cpanel mesmo que ela já exista


  

Comentários
[1] Comentário enviado por SMarcell em 17/05/2008 - 18:07h

Script com o mesmo propósito:

http://www.slackbr.org/forum/viewtopic.php?f=45&t=15052


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts