Re: apagar tudo e copiar tudo
Em Quarta 29 Novembro 2006 17:00, Carlos Alberto escreveu:
> Pessoal,
> Gostaria de saber como apagar e copiar todos os arquivos de um diretório,
> inclusive os ocultos! Quando uso " rm -rf diretorio/* " não são apagados
> os arquivos ocultos, e quando uso o comando "cp -Rf diretório/*
> novodiretorio", tambem, os arquivos ocultos nao sao copiados. Alguem sabe
> como faço isso?
Olá Carlos Alberto!
Para garantir a integridade dos seus arquivos ocultos, o bash exige que os
pontos no início do arquivo estejam explícitos na sua linha de comando. Para
reverter essa configuração, use o comando shopt. Veja o exemplo a seguir:
tiago@coruja:/tmp/teste$ touch .t1 t2
tiago@coruja:/tmp/teste$ ls
t2
tiago@coruja:/tmp/teste$ ls -a
. .. .t1 t2
tiago@coruja:/tmp/teste$ rm *
tiago@coruja:/tmp/teste$ ls -a
. .. .t1
tiago@coruja:/tmp/teste$ touch t2
tiago@coruja:/tmp/teste$ rm .*
rm: não é possível remover `.' ou `..'
rm: não é possível remover `.' ou `..'
tiago@coruja:/tmp/teste$ ls -a
. .. t2
tiago@coruja:/tmp/teste$ touch .t1
tiago@coruja:/tmp/teste$ ls -a
. .. .t1 t2
tiago@coruja:/tmp/teste$ shopt dotglob
dotglob off
tiago@coruja:/tmp/teste$ shopt -s dotglob
tiago@coruja:/tmp/teste$ shopt dotglob
dotglob on
tiago@coruja:/tmp/teste$ rm *
tiago@coruja:/tmp/teste$ ls -a
. ..
Repare que eu não fazia a menor idéia de que isso era possível e nunca tinha
nem ouvido falar do shopt. E olha que eu achava que já tinha percorrido mais
de uma vez a página de manual do bash. Mas está lá, na seção "Pathname
Expansion"
Tiago.
Reply to: