Como mover todos os arquivos mais ocultos para a pasta?

1

Eu quero mover todos os meus arquivos drupal na pasta www para a pasta html. Eu não sei como fazer isso no terminal e não tenho certeza se todas as pastas e arquivos, incluindo os ocultos, são drupal na pasta www, existe uma maneira de verificar os menos óbvios ou o www teria estado vazio antes e Quaisquer ficheiros ocultos serão automaticamente recriados?

    
por freja 30.11.2012 / 07:45

3 respostas

3

Com zsh:

mv -- *(D) html

mv vai reclamar que não pode mover html para si mesmo, mas ainda moverá o resto.

Com bash:

shopt -s dotglob
mv -- * html

Com ksh93:

FIGNORE='@(.|..)'
mv -- * html

POSIXly:

mv -- * .??* .[!.] html

ou

mv -- * .[!.]* ..?* html

(é provável que você receba erros para aqueles dos padrões que não têm correspondência. Isso deve ser inofensivo, mas ainda fará com que o status de saída seja diferente de zero, portanto, no script, você não conseguiria distinguir isso com um falha ao mover arquivos).

    
por 30.11.2012 / 08:40
2

O caminho mais fácil:

# from the www directory
cd ..
mv www html
mkdir www
mv html www/

Isso pressupõe que você ainda não tenha um diretório html no mesmo nível que www . Se fizer isso, escolha um nome diferente:

cd ..
mv www temp_name
mkdir www
mv temp_name www/html
    
por 30.11.2012 / 22:04
0

Uma opção ingênua (não tente!) seria: mv * .* html - isso, no entanto, tentará mover . e .. , o que não é exatamente o que você deseja. Eu costumo fazer algo como mv * .??* html - isso move arquivos normais e ocultos com nomes que possuem pelo menos 3 caracteres, efetivamente pulando . e ..

    
por 30.11.2012 / 07:57

Tags