como copiar o diretório com curinga para outra pasta

1

eu preciso fazer um cron que copie a pasta em /home

aqui está o conteúdo do meu /home

fina
f-logistik
folder-surat-jalan
zone-A
zone-B
zone-C
zone-free

o que eu preciso copiar é apenas a pasta que começa com 'zona'

Eu tentei:

cp /home/zone* /home.bak

mas retorne No such file or directory

EDIT: e toda a lista é pastas

EDIT # 2: eu uso 12.04 preciso ..

    
por moo tensai 15.04.2014 / 03:57

1 resposta

1

Isso porque seu $HOME não é /home . É um subdiretório de /home com o mesmo nome do usuário. Portanto, se seu nome de usuário for mootensai , seu $HOME será /home/mootensai . Para evitar esses erros, você pode simplesmente usar ~ ou $HOME , ambos os quais são seu diretório pessoal real. Por exemplo, no meu sistema:

$ echo ~
/home/terdon
$ echo $HOME
/home/terdon

O próximo problema é que, se você estiver copiando vários arquivos, será necessário garantir que o último arquivo seja um diretório. Caso contrário, cada arquivo copiado sobrescreverá o último e você terá apenas um arquivo.

De qualquer forma, os comandos que você quer são:

  1. Crie o diretório de backup

    mkdir ~/backup
    
  2. Copie os arquivos ao longo de

    cp -r ~/zone* ~/backup
    

Se, como é mais provável, você está no seu $HOME , você pode simplesmente fazer isso:

cp -r zone* backup
    
por terdon 15.04.2014 / 04:04