Acertando número para numeração

Publicado por Augusto 05/02/2006

[ Hits: 5.368 ]

Download numbercorrect.Ah




As vezes nós usamos alguns comandos ou scripts que deveram renomear arquivos e eles insistem em cometer esse erro:
arq1
arq10
arq11
arq2
arq3
.
.
.


qdo deveria retornar em ordem correta,..
          Este é um scriptzinho besta q tranforma o número 1 em 001, o 2 em 002 e/ou com qtos zeros vc quiser,...
          Espero q seja útil a alguém.,.
bjunda a tds,..

  



Esconder código-fonte

#!/bin/bash

#script numbercorrect.Ah

  #variáveis

  # ENT - recebe o número a ser trabalhado
  # ENTR - recebe o número a ser trabalhado atraves de $ENT e é usado para manipulaçÃo interna,.
  # INC - usada para contar a qtidade de zeros,.
  # RES - recebe o resultado.

  # setando as variáveis:
  ENT=$1
  INC=$(($2-1))
  
  #setando RES que aqui recebe o primeiro algarismo
  RES=$(($ENT-$ENT/10*10))

  #setando as demais variáveis
  ENTR=$(($ENT/10)) #já sendo retirado o último algarismo devido a linha 22




  while [ $ENTR != 0 ]
    do
      RES=$(($ENTR-$ENTR/10*10))$RES
      ENTR=$(($ENTR/10))
      INC=$(($INC-1))
    done

  while [ $INC != 0 ]
    do
      RES=0$RES
      INC=$(($INC-1))
    done

  echo $RES

Scripts recomendados

Tem g-mail não lido?

Adição automática dos repositórios do Google Chrome, Google Talk Plugin, Google Earth, Dro no Ubuntu

Gerador de Pacotes de Instalação

Matar aplicativos

Script simples para encerrar conexões


  

Comentários
[1] Comentário enviado por SMarcell em 12/05/2008 - 12:42h

Uma forma bem rápida de se fazer isso, seria utilizando o printf. Exemplo:

var=6
for ((i=0 ; i < 5 ; i++))
do
printf "%03d\n" "$var"
((var++))
done

Saída:
006
007
008
009
010


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts