This is an old revision of the document!
Table of Contents
Transferindo arquivos para a rede IME
Para instruções sobre como se logar na rede IME e rodar comandos remotamente por SSH, clique aqui.
Transferindo arquivos no Linux ou Mac usando scp
Abra um terminal e use o comando scp
. Sua sintaxe é:
scp [opções] origem destino
Uma opção importante é -r
, necessária para copiar diretórios inteiros.
Origem e destino podem ser locais ou remotos. Localmente, digite o nome do arquivo ou diretório normalmente. Remotamente, o formato é:
"nome-do-usuário"@shell.ime.usp.br:caminho
O caminho pode ser dado a partir do diretório HOME (por exemplo: usuario@shell.ime.usp.br:www/index.html
). Para digitar o caminho completo, comece com o caractere /
(por exemplo: usuario@shell.ime.usp.br:/home/posmac/usuario/www/index.html
).
Também podem ser usados caracteres coringa, como *
.
Exemplos de scp
scp aula1.html rita@shell.ime.usp.br:www/aulas/
Transfere o arquivo aula1.html
, que está no diretório atual de seu computador, para o diretório $HOME/www/aulas
da rede IME.
scp aula1.html rita@shell.ime.usp.br:
Transfere o arquivo aula1.html
para o diretório $HOME
do usuário rita
na rede IME. Note que é preciso digitar os dois pontos.
scp -r mac1234/ beto@shell.ime.usp.br:www/mac1234/
Transfere o diretório local mac1234
, com todo o seu conteúdo, para o diretório www/mac1234/
na rede IME, se esse diretório não existir ainda. (Ver também instrução sobre o comando rsync
, abaixo, para sincronizar diretórios).
scp mac1234/* beto@shell.ime.usp.br:www/mac1234/
Transfere os arquivos imediatamente abaixo de mac1234
para o diretório www/mac1234/
na rede IME, caso este diretório já exista. (Ver também instrução sobre o comando rsync
, abaixo, para sincronizar diretórios).
scp beto@shell.ime.usp.br:private/prova.tex provas/
Transfere o arquivo provas.tex
, que está dentro do diretório private/
na rede IME, para o computador local.
scp ~/transferencia/* manuel@shell.ime.usp.br:/tmp/transferencia/
Copia todos os arquivos que estão no diretório local ~/transferencia
para o diretório /tmp/transferencia/
do servidor IME, com a conta de manuel
. Note que a pasta deve existir, e o usuário manuel
precisa ter permissão de escrita.
Para saber mais sobre o scp
, digite em uma linha de comando: man scp
.
Usando o rsync para sincronizar diretórios
O comando scp
é melhor para transferir arquivos uma vez só. Caso você esteja sempre editando vários arquivos em um diretório e sincronizando-o com outro computador, o comando rsync
atenderá melhor as suas necessidades. A sintaxe básica é parecida:
rsync -r origem/ destino/ # exemplo do computador local para a rede IME rsync -r webpage/ usuario@shell.ime.usp.br:www/ # exemplo da rede IME para o computador local: rsync -r usuario@shell.ime.usp.br:/tmp/resultados/ pesquisa/resultados/
É importante digitar as barras no final, depois dos nomes dos diretórios. A opção -r
transmite o conteúdo de diretórios recursivamente, assim como no scp
. Uma vez que o comando termine, o conteúdo de destino/
espelhará tudo que está em origem/
.
O comando rsync
é muito mais poderoso que o scp
, mas também é mais complexo, e possui inúmeras opções. Destacamos algumas das mais interessantes:
-r
: Transmite o conteúdo de diretórios, recursivamente.-z
: Comprime os arquivos durante a transferência. Bom para Internet lenta.-P
: Mostra o progresso da transferência, e mantém transferências parciais para continuar depois.-u
(--update
): Só transmite arquivos que são mais novos na origem.-c
(--checksum
): Só transmite arquivos que são diferentes na origem.–delete
: Apaga arquivos no destino que foram apagados (ou não existem) na origem. Cuidado!-n
: Não transfere os arquivos nem altera nada; só mostra o que seria feito.
Para saber mais sobre rsync
, consulte o man rsync
, ou procure guias na Internet.