Como eu carrego mais de um arquivo em um servidor e mantenho sua estrutura de diretórios com o scp?

0

Eu tenho alguns arquivos locais em:

/doc/dir-monkey/monkey.txt
/doc/dir-monkey/monkey.xml

/doc/dir-dog/dog.txt
/doc/dir-dog/dog.xml

/doc/dir-cat/cat.txt
/doc/dir-cat/cat.xml

Agora eu quero enviá-los para um servidor remoto via scp

Eu quero manter o diretório da mesma maneira e substituir os arquivos antigos, se necessário. Eu sei que só posso fazer upload de um arquivo de cada vez e encontrei algumas dicas sobre como compactar os arquivos antes e depois descompactá-los remotamente. Existe alguma instrução detalhada para isso?

Atualmente estou usando o MacOSX 10.10 e o servidor remoto é o seguinte:

Distributor ID: Debian
Description:    Debian GNU/Linux 7.5 (wheezy)
Release:    7.5
Codename:   wheezy
    
por AGamePlayer 09.05.2015 / 05:52

3 respostas

3

Sempre consulte o manual da sua distribuição como os argumentos disponíveis & as opções variam. Use man scp .

Quanto a uma cópia recursiva no OSX usando o SCP, o seguinte deve funcionar:

scp -r /local/directory [email protected]:/remote/directory

    
por 09.05.2015 / 06:32
1

Como afirmado por jas,     scp -r localDir user @ server: remoteDir deve fazer uma cópia recursiva. Se você se preocupar com registros de data e hora de seus arquivos, isso adiciona o sinalizador -p e eles também são mantidos como em seu servidor local (caso contrário, eles serão alterados para a hora da cópia). Isso é bom com pequenos volumes de dados. Se você tiver que fazer isso regularmente em grandes volumes (grande número de arquivos) e só quiser atualizar o que foi alterado, recomendo usar o rsync.

Funcionaria assim:

rsync -avz locaDir user@remoteServer:remoteDir

Você precisará do rsync no osx e no ubuntu (o que é possível;)).

    
por 09.05.2015 / 09:39
0

Eu não sei dizer se isso é tudo na estrutura ou apenas um componente. Se isso é tudo, você pode fazer algo como scp -r /doc remote:/doc_copy .

Se este é apenas um subconjunto, é mais difícil fazer tudo em scp. Algumas opções podem ser scp-los, um de cada vez, ou usar algo como rsync (e sua interface de inclusão / exclusão mais expressiva).

    
por 09.05.2015 / 06:32

Tags