Manuais para a linha de comandos

Man » Manual online sftp - documentação online detalhada para a página de manual sftp

🌍
sftp — Transferência segura de arquivos OpenSSH

SINTAXE

sftp  [-46AaCfNpqrv]  [-B  buffer_size]  [-b  batchfile]  [-c  cipher]  [-D  sftp_server_command]
[-F ssh_config] [-i identity_file] [-J destination] [-l limit]  [-o  ssh_option]  [-P  port]
[-R num_requests] [-S program] [-s subsystem | sftp_server] [-X sftp_option] destination

DESCRIÇÃO

sftp é um programa de transferência de arquivos, semelhante a ftp(1), que executa todas as operações por meio de um transporte criptografado ssh(1). Ele também pode usar muitos recursos do ssh, como autenticação de chave pública e compressão.

O destino pode ser especificado como [user@]host[:path] ou como um URI no formato sftp://[user@]host[:port][/path].

Se o destino incluir um caminho e não for um diretório, o sftp recuperará os arquivos automaticamente se for usado um método de autenticação não interativo; caso contrário, ele o fará após uma autenticação interativa bem-sucedida.

Se nenhum caminho for especificado ou se o caminho for um diretório, o sftp fará login no host especificado e entrará no modo de comando interativo, alterando para o diretório remoto, se um tiver sido especificado. Um barra final opcional pode ser usado para forçar que o caminho seja interpretado como um diretório.

Como os formatos de destino usam caracteres de dois pontos para delimitar nomes de host de nomes de caminho ou números de porta, os endereços IPv6 devem ser colocados entre colchetes para evitar ambiguidade.

As opções são as seguintes:

-4      Força o sftp a usar apenas endereços IPv4.

-6      Força o sftp a usar apenas endereços IPv6.

-A      Permite o encaminhamento do ssh-agent(1) para o sistema remoto. O padrão é não encaminhar um
agente de autenticação.

-a      Tenta continuar as transferências interrompidas, em vez de sobrescrever cópias existentes de arquivos
parciais ou completos. Se o conteúdo parcial for diferente do que está sendo transferido,
o arquivo resultante provavelmente estará corrompido.

-B buffer_size

Especifica o tamanho do buffer que o sftp usa ao transferir arquivos. Buffers maiores requerem menos viagens de ida e volta, com o custo de maior consumo de memória. O padrão é 32768 bytes.

-b batchfile

O modo de lote lê uma série de comandos de um arquivo de entrada em lote, em vez de stdin. Como não possui interação com o usuário, ele deve ser usado em conjunto com a autenticação não interativa para eliminar a necessidade de inserir uma senha no momento da conexão (veja sshd(8) e ssh-keygen(1) para obter detalhes).

Um arquivo de lote de '-' pode ser usado para indicar a entrada padrão. O sftp será abortado se algum dos
seguintes comandos falhar: get, put, reget, reput, rename, ln, rm, mkdir, chdir, ls,
lchdir, copy, cp, chmod, chown, chgrp, lpwd, df, symlink e lmkdir.

A supressão do término em caso de erro pode ser feita em cada comando, prefixando o comando com um caractere ‘-’ (por exemplo, -rm /tmp/blah*). O eco do comando pode ser suprimido prefixando o comando com um caractere ‘@’. Esses dois prefixos podem ser combinados em qualquer ordem, por exemplo, -@ls /bsd.

-C Ativa a compressão (via a flag -C do ssh).

-c cipher
Seleciona a cifra a ser usada para criptografar as transferências de dados. Esta opção é passada diretamente para [ssh]({filename}../../ssh)(1).

-D sftp_server_command
Conecta-se diretamente a um servidor sftp local (em vez de através do [ssh]({filename}../../ssh)(1)). Um comando e argumentos podem ser especificados, por exemplo, "/path/sftp-server -el debug3". Esta opção pode ser útil para depurar o cliente e o servidor.

-F ssh_config
Especifica um arquivo de configuração por usuário alternativo para [ssh]({filename}../../ssh)(1). Esta opção é passada diretamente para [ssh]({filename}../../ssh)(1).

-f Solicita que os arquivos sejam gravados no disco imediatamente após a transferência. Ao carregar arquivos, este recurso é habilitado apenas se o servidor implementar a extensão "_".

-i identity_file
Seleciona o arquivo do qual a identidade (chave privada) para autenticação de chave pública é lida. Esta opção é passada diretamente para [ssh]({filename}../../ssh)(1).

-J destination
Conecta-se ao host de destino primeiro fazendo uma conexão sftp com o host intermediário descrito por destination e, em seguida, estabelecendo um encaminhamento TCP para o destino final a partir daí. Vários saltos intermediários podem ser especificados, separados por vírgulas. Esta é uma forma abreviada de especificar uma diretiva de configuração ProxyJump. Esta opção é passada diretamente para [ssh]({filename}../../ssh)(1).

-l limit
Limita a largura de banda utilizada, especificada em Kbit/s.

-N Desativa o modo silencioso, por exemplo, para substituir o modo silencioso implícito definido pela flag -b.

-o ssh_option
Pode ser usado para passar opções para ssh no formato usado em ssh_config(5). Isso é útil para especificar opções para as quais não há uma flag de linha de comando sftp separada. Por exemplo, para especificar uma porta alternativa, use: sftp -oPort=24. Para obter detalhes completos das opções listadas abaixo e seus possíveis valores, consulte ssh_config(5).

AddKeysToAgent
AddressFamily
BatchMode
BindAddress
BindInterface
CASignatureAlgorithms
CanonicalDomains
CanonicalizeFallbackLocal
CanonicalizeHostname
CanonicalizeMaxDots
CanonicalizePermittedCNAMEs
CertificateFile
ChannelTimeout
CheckHostIP
Ciphers
ClearAllForwardings
Compression
ConnectTimeout
ConnectionAttempts
ControlMaster
ControlPath
ControlPersist
DynamicForward
EnableEscapeCommandline
EnableSSHKeysign
EscapeChar
ExitOnForwardFailure
FingerprintHash
ForkAfterAuthentication
ForwardAgent
ForwardX11
ForwardX11Timeout
ForwardX11Trusted
GSSAPIAuthentication
GSSAPIDelegateCredentials
GatewayPorts
GlobalKnownHostsFile
HashKnownHosts
Host
HostKeyAlgorithms
HostKeyAlias
HostbasedAcceptedAlgorithms
HostbasedAuthentication
Hostname
IPQoS
IdentitiesOnly
IdentityAgent
IdentityFile
IgnoreUnknown
Include
KbdInteractiveAuthentication
KbdInteractiveDevices
KexAlgorithms
KnownHostsCommand
LocalCommand
LocalForward
LogLevel
LogVerbose
MACs
NoHostAuthenticationForLocalhost
NumberOfPasswordPrompts
ObscureKeystrokeTiming
PKCS11Provider
PasswordAuthentication
PermitLocalCommand
PermitRemoteOpen
Port
PreferredAuthentications
ProxyCommand
ProxyJump
ProxyUseFdpass
PubkeyAcceptedAlgorithms
PubkeyAuthentication
RekeyLimit
RemoteCommand
RemoteForward
RequestTTY
RequiredRSASize
RevokedHostKeys
SecurityKeyProvider
SendEnv
ServerAliveCountMax
ServerAliveInterval
SessionType
SetEnv
StdinNull
StreamLocalBindMask
StreamLocalBindUnlink
StrictHostKeyChecking
SyslogFacility
TCPKeepAlive
Tag
Tunnel
TunnelDevice
UpdateHostKeys
User
UserKnownHostsFile
VerifyHostKeyDNS
VisualHostKey
XAuthLocation

-P porta

Especifica a porta para conectar no host remoto.

-p

Preserva os tempos de modificação, tempos de acesso e modos dos arquivos originais transferidos.

-q

Modo silencioso: desativa o medidor de progresso, bem como as mensagens de aviso e diagnóstico de ssh(1).

-R num_requests

Especifica quantos pedidos podem estar pendentes a qualquer momento. Aumentar este valor pode melhorar ligeiramente a velocidade de transferência de arquivos, mas aumentará o uso de memória. O padrão é 64 pedidos pendentes.

-r

Copia recursivamente diretórios inteiros ao fazer upload e download. Observe que o sftp não segue os links simbólicos encontrados durante a travessia da árvore.

-S programa

Nome do programa a ser usado para a conexão criptografada. O programa deve entender as opções de ssh(1).

-s subsystem | sftp_server

Especifica o subsistema SSH2 ou o caminho para um servidor sftp no host remoto. Um caminho é útil quando o sshd(8) remoto não tem um subsistema sftp configurado.

-v

Aumenta o nível de registro. Esta opção também é passada para o ssh.

-X sftp_option

Especifica uma opção que controla aspectos do comportamento do protocolo SFTP. As opções válidas são:

nrequests=valor

Controla quantos pedidos SFTP de leitura ou gravação simultâneos podem estar em andamento em qualquer ponto durante um download ou upload. Por padrão, 64 pedidos podem estar ativos simultaneamente.

buffer=valor

Controla o tamanho máximo do buffer para uma única operação de leitura/gravação SFTP usada durante o download ou upload. Por padrão, um buffer de 32 KB é usado.

COMANDOS INTERATIVOS

Uma vez no modo interativo, o sftp entende um conjunto de comandos semelhantes aos de ftp(1). Os comandos não diferenciam maiúsculas de minúsculas. Os caminhos que contêm espaços devem ser colocados entre aspas. Quaisquer caracteres especiais contidos nos caminhos que são reconhecidos por glob(3) devem ser escapados com barras invertidas (‘\’).

bye

Sai do sftp.

cd [caminho]

Altera o diretório remoto para o caminho especificado. Se o caminho não for especificado, altera o diretório para o que a sessão começou.


chgrp [-h] grp path

Altera o grupo do arquivo path para grp. path pode conter caracteres glob(7) e pode corresponder a vários arquivos. grp deve ser um GID numérico.

Se a flag -h for especificada, os links simbólicos não serão seguidos. Observe que isso só é suportado por servidores que implementam a extensão "_".

chmod [-h] mode path

Altera as permissões do arquivo path para mode. path pode conter caracteres glob(7) e pode corresponder a vários arquivos.

Se a flag -h for especificada, os links simbólicos não serão seguidos. Observe que isso só é suportado por servidores que implementam a extensão "_".

chown [-h] own path

Altera o proprietário do arquivo path para own. path pode conter caracteres glob(7) e pode corresponder a vários arquivos. own deve ser um UID numérico.

Se a flag -h for especificada, os links simbólicos não serão seguidos. Observe que isso só é suportado por servidores que implementam a extensão "_".

copy oldpath newpath

Copia o arquivo remoto de oldpath para newpath.

Observe que isso só é suportado por servidores que implementam a extensão "copy-data".

cp oldpath newpath

Alias para o comando copy.

df [-hi] [path]

Exibe informações de uso para o sistema de arquivos que contém o diretório atual (ou path, se especificado). Se a flag -h for especificada, as informações de capacidade serão exibidas usando sufixos "legíveis por humanos". A flag -i solicita a exibição de informações de inode, além das informações de capacidade. Este comando só é suportado em servidores que implementam a extensão “_”.

exit    Encerra o sftp.

get [-afpR] remote-path [local-path]

Recupera o remote-path e o armazena na máquina local. Se o caminho local não for especificado, ele terá o mesmo nome que tem na máquina remota. remote-path pode conter caracteres glob(7) e pode corresponder a vários arquivos. Se isso acontecer e local-path for especificado, então local-path deve especificar um diretório.

Se a flag -a for especificada, então tente retomar transferências parciais de arquivos existentes. Observe que a retomada assume que qualquer cópia parcial do arquivo local corresponda à cópia remota. Se o conteúdo do arquivo remoto for diferente da cópia local parcial, então o arquivo resultante provavelmente estará corrompido.

Se a flag -f for especificada, então fsync(2) será chamado após a conclusão da transferência do arquivo para gravar o arquivo no disco.

Se a flag -p for especificada, então as permissões completas do arquivo e os tempos de acesso também serão copiados.

Se a flag -R for especificada, então os diretórios serão copiados recursivamente. Observe que o sftp não segue links simbólicos ao executar transferências recursivas.

help    Exibe o texto de ajuda.

lcd [path]

Altera o diretório local para path. Se path não for especificado, então altere o diretório para o diretório inicial do usuário local.

lls [ls-options [path]]

Exibe a listagem do diretório local de path ou do diretório atual, se path não for especificado. ls-options pode conter quaisquer flags suportadas pelo comando ls(1) do sistema local. path pode conter caracteres glob(7) e pode corresponder a vários arquivos.


lmkdir caminho
Cria um diretório local especificado por caminho.

ln [-s] caminho_antigo caminho_novo
Cria um link de caminho_antigo para caminho_novo. Se a flag -s for especificada, o link criado será um link simbólico; caso contrário, será um link físico.

lpwd
Imprime o diretório de trabalho local.

ls [-1afhlnrSt] [caminho]
Exibe uma listagem de diretório remota de caminho ou do diretório atual, caso caminho não seja especificado. caminho pode conter caracteres glob(7) e pode corresponder a vários arquivos.

As seguintes flags são reconhecidas e alteram o comportamento de ls de acordo:

-1
Produz saída em coluna única.

-a
Lista arquivos que começam com um ponto (‘.’).

-f
Não ordena a listagem. A ordem de classificação padrão é lexicográfica.

-h
Quando usado com uma opção de formato longo, usa sufixos de unidade: Byte, Kilobyte, Megabyte, Gigabyte, Terabyte, Petabyte e Exabyte para reduzir o número de dígitos para quatro ou menos usando potências de 2 para tamanhos (K=1024, M=1048576, etc.).

-l
Exibe detalhes adicionais, incluindo permissões e informações de propriedade.

-n
Produz uma listagem longa com informações de usuário e grupo apresentadas numericamente.

-r
Inverte a ordem de classificação da listagem.

-S
Classifica a listagem por tamanho do arquivo.

-t
Classifica a listagem por hora da última modificação.

lumask umask
Define o umask local para umask.

mkdir caminho
Cria um diretório remoto especificado por caminho.

progress
Alterna a exibição do medidor de progresso.

put [-afpR] caminho_local [caminho_remoto]
Carrega caminho_local e armazena-o na máquina remota. Se o nome do caminho remoto não for especificado, ele recebe o mesmo nome que tem na máquina local. caminho_local pode conter caracteres glob(7) e pode corresponder a vários arquivos. Se isso acontecer e caminho_remoto for especificado, então caminho_remoto deve especificar um diretório.

Se a flag -a for especificada, tenta retomar transferências parciais de arquivos existentes. Note que a retomada assume que qualquer cópia parcial do arquivo remoto corresponde à cópia local. Se o conteúdo do arquivo local for diferente da cópia local remota, o arquivo resultante provavelmente estará corrompido.

Se a flag -f for especificada, uma solicitação será enviada ao servidor para chamar fsync(2) após a transferência do arquivo. Observe que isso é suportado apenas por servidores que implementam a extensão “_”.

Se a flag -p for especificada, as permissões completas do arquivo e os horários de acesso também serão copiados.

Se a flag -R for especificada, os diretórios serão copiados recursivamente. Observe que o sftp não segue links simbólicos ao realizar transferências recursivas.

pwd
Exibe o diretório de trabalho remoto.

quit
Sai do sftp.

reget [-fpR] caminho_remoto [caminho_local]
Retoma o download de caminho_remoto. Equivalente a get com a flag -a definida.

reput [-fpR] caminho_local [caminho_remoto]
Retoma o upload de caminho_local. Equivalente a put com a flag -a definida.

rename oldpath newpath

Renomeia um arquivo remoto de oldpath para newpath.

rm path

Exclui o arquivo remoto especificado por path.

rmdir path

Remove o diretório remoto especificado por path.

symlink oldpath newpath

Cria um link simbólico de oldpath para newpath.

version

Exibe a versão do protocolo sftp.

!command

Executa um comando no shell local.

!       Entra no shell local.

?       Sinônimo para help.

VEJA TAMBÉM

ftp(1), ls(1), scp(1), ssh(1), ssh-add(1), ssh-keygen(1), ssh_config(5), glob(7), sftp-server(8), sshd(8)

T. Ylonen e S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-filexfer-00.txt, Janeiro
2001, material em desenvolvimento.