Copiando da unidade de compartilhamento de montagem para pasta local por meio de script

3

Esta é minha primeira vez tentando trabalhar com Scripts Linux, então isso pode ser algo óbvio.

Aqui está o que estou tentando fazer:

  1. Remover todo o conteúdo da pasta local - rm / home / user / Documents / Exercise /
  2. Copiar arquivos de uma unidade de rede compartilhada do Windows - cp smb: // server / arc / Exercise% 20Files / Word /

Então, pelo que entendi, meu comando deve se parecer com isso

  rm /home/user/Documents/Exercise/
  cp smb://server/arc/Exercise%20Files/Word/ /home/user/Documents/Exercise/

Mas sempre que tento executar um dos comandos acima, recebo o seguinte erro:

  "rm: cannot remove '/home/user/Documents/Exercise/': Is a directory"
  "cp: cannot stat 'smb://server/arc/Exercise%20Files/Word/': No such file or directory"

O que estou fazendo de errado?

Atenciosamente,

M

EDITAR:

Agora tenho a função rm funcionando, mas ainda estou com problemas com a função cp . Para garantir que não seja um problema com os espaços nos nomes das pastas, renomei as pastas no compartilhamento para que ele leia agora: //server/Arc/ExerciseFiles/*

Eu montei a pasta para que (suponhamos) não seja mais necessário o smb:// . Atualmente lê: cp -rfv /home/user/Documents/ExerciseShare/ExerciseFiles/Word/ /home/user/Documents/Exercise/

M

    
por Mitchell 15.03.2013 / 06:11

2 respostas

3

Nenhum comando deve ser semelhante a seguir

  rm -rfv /home/user/Documents/Exercise/*

porque a pasta Exercício pode ter subdiretórios

e no caso de um compartilhamento de samba primeiro você tem que montá-lo localmente

i.e.

mount -t smbfs smb://"server/arc/Exercise Files/Word/" /mnt 

e depois faça

 cp /mnt /home/user/Documents/Exercise/
    
por Registered User 15.03.2013 / 08:20
2

Você precisa usar o sinalizador "menos r" ou -r

rm -r

e

cp -r

Isto irá copiar ou apagar recursivamente em pastas ou arquivos dentro de arquivos.

    
por noel 15.03.2013 / 06:24