Estou na máquina A e quero extrair um arquivo da máquina B.
A$ scp <myuserid>@hostB:<path of file in B> .
isso diz que:
scp: <path of file in B>: No such file or directory
Mas na máquina B, esse arquivo existe neste caminho.
O que está acontecendo de errado?
Respostas:
Você não especificou nenhum arquivo: você deve adicionar o arquivo (com o caminho) após os dois pontos:
ou
para um caminho relativo ao seu diretório pessoal.
Se você não especificar um usuário diferente (ou seja, o usuário A e B são os mesmos), não precisará do
@
fonte
Isso funciona apenas quando você copia o arquivo. se você deseja copiar um diretório, use
Opção que você pode usar sob sua demanda
-P port
Especifica a porta à qual se conectar no host remoto. Observe que esta opção é gravada com "P" maiúsculo, porque -p já está reservado para preservar os horários e modos do arquivo no rcp.
-p
Preserva os tempos de modificação, os tempos de acesso e os modos do arquivo original.
-r
Copia recursivamente diretórios inteiros.
-v
Modo verboso. Faz com que scp e ssh imprimam mensagens de depuração sobre seu progresso. Isso é útil na depuração de problemas de conexão, autenticação e configuração.
fonte
use o caminho scp adequado
fonte
Você pode especificar um caminho de arquivo que seja relativo ao diretório inicial ou um caminho de arquivo absoluto. Por exemplo, se
foo.txt
estiver em um diretório chamadodocs
sob o diretório inicial ebar.txt
estiver/var/tmp
, você poderáObserve que, se o nome do arquivo contiver caracteres especiais para o shell remoto (geralmente espaço em branco ou
!"#$&'*;<>?[\]^`{|}~
), será necessário escapá-los para o shell remoto, além de escapar para o shell local. Por exemplo, se o arquivo for chamadofoo bar.txt
e estiver no seu diretório pessoal:Se você tiver dificuldades com arquivos que contenham caracteres de pontuação, tente usar em
sftp
vez descp
transferi-los. Ou use um método ainda mais conveniente, se você puder usar o FUSE : monte o sistema de arquivos da máquina remota usando sshfs e use comandos comuns de manipulação de arquivos.fonte
É possível fazer o SCP dos dois lados com facilidade, se houver o usuário e a senha da DMZ. Você está na sua máquina local: da DMZ à sua máquina Linux local (pull). Significa copiar abc.text dentro de folder2 para o seu PWD conectado atual.
Ele solicitará a senha
Isso é tudo
Agora você deseja enviar uma pasta para subpastas e arquivos da sua máquina local para a DMZ:
usr @ localmachine: ~ / abc / defs> pasta scp -r / usr @ 111111: vkrishna / docker /
novamente a senha será solicitada
: é a pasta raiz da máquina remota e vkrishna é uma pasta lá e novamente na subpasta docker. A pasta defs localmente tem uma pasta chamada "pasta" que queremos transferir completamente.
Curtir / abc / defs / folder
fonte