shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

script para renomear recursivamente


From: voyeg3r
Subject: script para renomear recursivamente
Date: Sun, 12 Aug 2007 14:52:49 -0000
User-agent: eGroups-EW/0.82

Antes de tudo um script para criar 10 pastas com 10 arquivos cada 

=========================================
#!/bin/bash
# este script cria 10 pastas com 10 arquivos cada

  for ((i=1; i<=10; i++)); {
       mkdir "PASTA $i"
       for ((j=1; j<=10; j++)); {
          echo "ARQUIVO$ {j}.txt" > "PASTA ${i}"/"ARQUIVO $j"
       }
       unset j
  }
========================================

Obs1: cria com nome em UPPERCASE e com E S P A Ç O 

O desafio que envio para a lista é o seguinte
1° - TESTAR O SCRIPT ABAIXO (meu ambiente é utf-8 ubuntu)

   pois não tenho arquivos em iso-8859-1
   - colocar em lowcase já consegui, assim como retirar os espaços

2° - FAZER O SCRIPT FICAR MAIS RÁPIDO 
     SEM ADICIONAR MUITAS LINHAS



==========================================================
#!/bin/bash
# Criado em:Dom 12/Ago/2007 hs 10:49
# Last Change: Dom 12 Ago 2007 11:11:06 BRT
# Instituicao:
# Proposito do script: renomear / iconv recursivo
# Autor: Sérgio Luiz Araújo Silva

# função recursiva

CONVERTER (){

      for i in *  #laço para converter conteúdo da pasta atual
      do
            mv "$i" "$(echo "$i" | iconv -f iso-8859-1 -t utf-8 | tr ' ' '_' | \
            tr '[:upper:]' '[:lower:]')"
      done

      for i in *  #laço para converter subpastas FUNÇÃO RECURSIVA
      do

         if [ -d "$i" ]; then
            OLDDIR=$(pwd)
            cd "$i"
            CONVERTER
            cd "$OLDDIR"
         fi

      done
}
CONVERTER






reply via email to

[Prev in Thread] Current Thread [Next in Thread]