PSCP: Faça upload de uma pasta inteira, do Windows para o Linux

26

Estou usando o PSCP para fazer upload de alguns arquivos do Windows para o Linux. Eu posso fazer isso apenas carregando um arquivo de cada vez. Mas eu tenho alguns diretórios muito grandes e quero fazer o upload de um diretório inteiro de uma só vez.

Eu tentei:

pscp -i C:\sitedeploy\abt-keypair.ppk includes\* [email protected]:/usr/local/tomcat/webapps/ROOT/includes/*

Lança o erro: "pscp: filespec remoto / usr / local / tomcat / webapps / ROOT / inclui / *: não é um diretório"

e

pscp -i C:\sitedeploy\abt-keypair.ppk includes\ [email protected]:/usr/local/tomcat/webapps/ROOT/includes/

Lança o erro: "scp: inclui: não é um arquivo normal"

e

pscp -i C:\sitedeploy\abt-keypair.ppk includes [email protected]:/usr/local/tomcat/webapps/ROOT/includes

Lança o erro: "scp: inclui: não é um arquivo normal"

    
por UpHelix 29.07.2011 / 18:18

3 respostas

27

Dois problemas: Primeiro, o * não vai para o lado do destino. Em segundo lugar, -r é para copiar um diretório e subdiretórios inteiros.

pscp -i C:\sitedeploy\abt-keypair.ppk includes\* [email protected]:/usr/local/tomcat/webapps/ROOT/includes/

Copiará todos os arquivos no diretório local includes\ para o diretório .../includes/ no servidor.

pscp -r -i C:\sitedeploy\abt-keypair.ppk includes\ [email protected]:/usr/local/tomcat/webapps/ROOT/

Copiará o próprio diretório includes\ , incluindo todos os arquivos e subdiretórios, para o diretório .../ROOT/ no servidor (onde o conteúdo do diretório local será mesclado com qualquer diretório .../ROOT/includes/ existente.

    
por 29.07.2011 / 18:27
5

Se você deseja copiar um diretório e seu conteúdo, não é necessário fornecer uma especificação de arquivo para o destino. Apenas use o nome do diretório, por exemplo.

pscp  -i C:\sitedeploy\abt-keypair.ppk includes\* [email protected]:/usr/local/tomcat/webapps/ROOT/includes/

Se você deseja copiar o diretório e tudo abaixo dele, use -r :

pscp -r -i C:\sitedeploy\abt-keypair.ppk includes\ [email protected]:/usr/local/tomcat/webapps/ROOT/includes/
    
por 09.11.2017 / 09:13
5

Aviso:

Você não precisa usar -i para isso. É para autenticação de arquivo de chave privada. Basta usar -r para copiar os arquivos de origem de forma recursiva.

Você pode querer um método de arrastar e soltar, já que está usando o Windows. Você pode - por exemplo - usar o cliente WINSCP .

    
por 06.06.2014 / 05:29