Pular para o conteúdo
🛠️ToolsShed

SFTP Commands Reference

Folha de cola completa de comandos SFTP para transferência de arquivo via SSH.

27 comandos

sftpConexão

Connect to SFTP server

Sintaxe:

sftp [user@]host[:path]

Exemplo:

sftp user@example.com
sftp -PConexão

Connect on a specific port

Sintaxe:

sftp -P <port> user@host

Exemplo:

sftp -P 2222 user@example.com
sftp -iConexão

Connect using identity/key file

Sintaxe:

sftp -i <keyfile> user@host

Exemplo:

sftp -i ~/.ssh/id_rsa user@example.com
exit / quit / byeConexão

Close the SFTP connection

Sintaxe:

exit

Exemplo:

exit
lsNavegação

List remote directory contents

Sintaxe:

ls [-l] [path]

Exemplo:

ls -l /home/user
llsNavegação

List local directory contents

Sintaxe:

lls [path]

Exemplo:

lls ~/Downloads
pwdNavegação

Print remote working directory

Sintaxe:

pwd

Exemplo:

pwd
lpwdNavegação

Print local working directory

Sintaxe:

lpwd

Exemplo:

lpwd
cdNavegação

Change remote directory

Sintaxe:

cd <path>

Exemplo:

cd /var/www/html
lcdNavegação

Change local directory

Sintaxe:

lcd <path>

Exemplo:

lcd ~/projects
getTransferência

Download file from remote to local

Sintaxe:

get <remote> [local]

Exemplo:

get backup.tar.gz
get -rTransferência

Download directory recursively

Sintaxe:

get -r <dir> [local]

Exemplo:

get -r /remote/dir ./local
putTransferência

Upload file from local to remote

Sintaxe:

put <local> [remote]

Exemplo:

put index.html /var/www/
put -rTransferência

Upload directory recursively

Sintaxe:

put -r <dir> [remote]

Exemplo:

put -r ./dist /var/www/
mgetTransferência

Download multiple files matching pattern

Sintaxe:

mget <pattern>

Exemplo:

mget *.log
mputTransferência

Upload multiple files matching pattern

Sintaxe:

mput <pattern>

Exemplo:

mput *.jpg
regetTransferência

Resume an interrupted download

Sintaxe:

reget <remote> <local>

Exemplo:

reget bigfile.zip bigfile.zip
rmGerenciamento

Remove remote file

Sintaxe:

rm <path>

Exemplo:

rm /tmp/old.log
rmdirGerenciamento

Remove remote directory

Sintaxe:

rmdir <path>

Exemplo:

rmdir /tmp/olddir
mkdirGerenciamento

Create remote directory

Sintaxe:

mkdir <path>

Exemplo:

mkdir /var/www/uploads
renameGerenciamento

Rename or move remote file

Sintaxe:

rename <old> <new>

Exemplo:

rename old.txt new.txt
chmodGerenciamento

Change remote file permissions

Sintaxe:

chmod <mode> <path>

Exemplo:

chmod 644 index.html
chownGerenciamento

Change remote file owner

Sintaxe:

chown <owner> <path>

Exemplo:

chown www-data file.php
dfInformações

Show remote disk usage

Sintaxe:

df [-h]

Exemplo:

df -h
statInformações

Show file attributes

Sintaxe:

stat <path>

Exemplo:

stat /etc/passwd
versionInformações

Show SFTP protocol version

Sintaxe:

version

Exemplo:

version
helpInformações

Show all available commands

Sintaxe:

help

Exemplo:

help

Sobre esta ferramenta

SFTP (Protocolo de Transferência de Arquivo SSH) é um método seguro para transferir arquivos entre computadores através de uma conexão SSH criptografada. Diferentemente de protocolos mais antigos, como FTP, SFTP oferece criptografia de ponta a ponta, protegendo seus dados contra interceptação e garantindo que as credenciais de autenticação permaneçam confidenciais. Este guia de referência reúne os comandos SFTP mais comumente usados em um único lugar, facilitando que desenvolvedores, administradores de sistemas e engenheiros de DevOps executem operações de arquivo sem precisar memorizar a sintaxe.

Usando SFTP pela linha de comando, você pode se conectar a servidores remotos, navegar por estruturas de diretório, carregar e baixar arquivos, e gerenciar permissões—tudo através de um túnel seguro. Quer você esteja implantando aplicações, fazendo backup de configurações ou transferindo registros, comandos SFTP como get, put, ls e cd são ferramentas fundamentais em seu fluxo de trabalho. O formato de cola permite que você procure rapidamente a sintaxe de comandos e opções sem alternar entre várias páginas de documentação.

Esta ferramenta é mais valiosa para qualquer pessoa que trabalhe com servidores remotos em ambientes de produção onde segurança e confiabilidade são importantes. Equipes de DevOps, administradores de sistemas e desenvolvedores se beneficiam ao ter uma referência rápida para a sintaxe de SFTP, especialmente ao resolver problemas de transferência de arquivos ou integrar novos membros da equipe que precisam aprender as práticas seguras de manipulação de arquivos.

Perguntas Frequentes

Implementação de Código

import subprocess
import os

def sftp_connect(host: str, user: str, port: int = 22, key_file: str = None) -> list[str]:
    """Build an sftp command to connect to a remote host."""
    cmd = ["sftp"]
    if port != 22:
        cmd.extend(["-P", str(port)])
    if key_file:
        cmd.extend(["-i", key_file])
    cmd.append(f"{user}@{host}")
    return cmd

def sftp_batch_commands(local_dir: str, remote_dir: str, files: list[str]) -> str:
    """Generate SFTP batch file commands for uploading multiple files."""
    lines = [f"cd {remote_dir}", f"lcd {local_dir}"]
    for f in files:
        lines.append(f"put {f}")
    lines.append("bye")
    return "\n".join(lines)

# Example: create a batch file for SFTP upload
batch = sftp_batch_commands("/local/uploads", "/remote/data", ["a.csv", "b.csv"])
print("SFTP batch commands:")
print(batch)

# Write to batch file and run
with open("/tmp/sftp_batch.txt", "w") as bfile:
    bfile.write(batch)
cmd = sftp_connect("example.com", "myuser") + ["-b", "/tmp/sftp_batch.txt"]
print("\nCommand:", " ".join(cmd))
# subprocess.run(cmd)  # Uncomment to actually run

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.