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

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

Re: [shell-script] Renomear somente dir para minuscula - SOLUÇÃO


From: Ricardo A. Reis
Subject: Re: [shell-script] Renomear somente dir para minuscula - SOLUÇÃO
Date: Sat, 12 Aug 2006 15:46:04 -0300
User-agent: Opera Mail/9.00 (FreeBSD)

Mais algumas formas,

ZSH !!

[ricardo@myfreebsd:/tmp/teste] # ls -l
total 4
drwxr-xr-x  2 ricardo  wheel  512 12 Ago 15:37 TESTE1
drwxr-xr-x  2 ricardo  wheel  512 12 Ago 15:37 TESTE2

[ricardo@myfreebsd:/tmp/teste] # ls -l| grep '^d' |cut -d' ' -f12 | while read dir;do echo mv $dir ${dir:l};done

mv TESTE1 teste1
mv TESTE2 teste2

BASH

[ricardo@myfreebsd:/tmp/teste] # ls -l| grep '^d' |cut -d' ' -f12 | while read dir;do echo mv $dir `echo $dir | tr 'A-Z' 'a-z'` ;done
mv TESTE1 teste1
mv TESTE2 teste2



Atenciosamente

Ricardo A. Reis
UNIFESP
Unix and Network Admin






On Wed, 09 Aug 2006 17:27:51 -0300, CyberCrow <address@hidden> wrote:

 Agradeço a ajuda de todos, a solução com base na dica do Flávio Junior
e de um amigo do trabalho (valeu Nick !), foi o que segue abaixo.

P.S - Esqueci de mencionar que eu só queria mudar os subdiretorios do
diretorio corrente, e nao os que estao abaixo deles.


rm -f dirMai.txt
find . -type d -maxdepth 1 -name [A-Z]\* > dirMai.txt
for i in `cat dirMai.txt`;do
 mv $i `echo $i | tr [A-Z] [a-z]`
done


======================================
                  CyberCrow
        Conhecimento é Poder !

  Quando voce perde a mente limitada
       Voce liberta a sua vida

  http://cybercrow.blogspot.com
======================================

 -----BEGIN GEEK CODE BLOCK-----
  Version: 3.12
  GCM/L/U d- s-: a- C++ LSU++++ P+ L+++ E--- W++ N w--
  O-- M- V- PS PE- Y PGP++ t 5 X++ R tv- b++ DI D+
  G++ e- h* r y+
 -------END GEEK CODE BLOCK------



MrBiTs wrote:
/*
Estou desenvolvendo um script para renomear SOMENTE subdiretorios de um
diretorio.
Os nome dos diretorios estao todos bagunçados com letras maiusculas e
minusculas e o script deve colocar todos os nomes dos diretorios como
minusculas. E, como disse antes, somente os diretorios, não os arquivos.

Mas estou travando na hora do "mv"

Abaixo o que fiz até agora:


rm -f dirmin.txt dirMai.txt
for i in `ls`; do
  if [ -d $i ]; then
    echo $i >> dirMai.txt
    cat dirMai.txt | tr [A-Z] [a-z] > dirmin.txt
  else
    echo $i nao e diretorio
  fi
done

*/

$ mv DIR dir

:)

Agora, dá para melhorar o processo

for I in $(find . -type d) ; do
      mv $I $(echo $I | tr [:uper:] [:lower:])
done




---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos









--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

                
_______________________________________________________ O Yahoo! está de cara nova. Venha conferir! http://br.yahoo.com


reply via email to

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