Copiando arquivos com certas extensões com scp

19

Quero copiar .jpge .pngarquivos com scp, mas existem arquivos com extensões diferentes na mesma pasta da qual estou copiando. Eu estou fazendo o seguinte:

scp [email protected]:/folder/*.{jpg,png} .

Me pedem para inserir minha senha para cada tipo de ramal. Existe uma maneira de fazer isso de maneira que eu digite minha senha apenas uma vez?

nitrato de sódio
fonte

Respostas:

31

Basta substituí-lo por:

scp [email protected]:'/folder/*.{jpg,png}' .

Observe o par de aspas simples. No seu caso, seu shell local está avaliando a expressão, transformando-a realmente em:

scp [email protected]:/folder/*.jpg [email protected]:/folder/*.png .

daqui as duas senhas pedidas. Nesta solução, o par de aspas simples o protege da avaliação pelo shell local, portanto, é o shell remoto chamado pelo (remote) scp que está avaliando a expressão.

AB
fonte
Como posso incluir todos os subdiretórios desse diretório?
xxx ---
@ pushpen.paul Se você não precisa selecionar apenas arquivos png e jpg, mas deseja copiar tudo, use-o, por exemplo scp -r [email protected]:'/folder' . . Caso contrário, se você ainda deseja copiar apenas png e jpg nesses subdiretórios, provavelmente não poderá usar scp ou sftp (a menos que sftp / lftp com possível script personalizado), mas precise executar algo como ssh + um par de tar. Você teria que fazer sua própria pergunta com as necessidades específicas.
AB
7

Melhor usar o rsync para copiar operações entre servidores.

 rsync -avzh user@remoteip:/path/*.jpg [email protected]:/path/*.png localserverpath

Usando o rsync, ele solicitará a senha apenas uma vez.

Também no rsync, durante a transferência do arquivo, ele verifica o local de destino se o arquivo existe ou não e também verifica se o conteúdo é igual ou não no local de origem e destino.

Se o arquivo também existir no local de destino e o conteúdo também for o mesmo, ele não será copiado. Ele copiará apenas os arquivos que não existem no local de destino, reduzindo o tempo de processamento.

O rsync é frequentemente usado como uma ferramenta de backup incremental.

Praveen Kumar BS
fonte
8
Não importa se usado rsyncou scp, o ponto é que /folder/*.{jpg,png}deve citar '/folder/*.{jpg,png}' .
precisa saber é