commande sftp pour obtenir / télécharger le fichier .tar.gz

15

Je pensais que je connaissais les sftpcommandes sous Unix et jusqu'à ce que je sache, la commande à utiliser pour télécharger un compressedfichier depuis le serveur est

sftp get filename.tar.gz

Mais quand j'ai essayé cette commande, le fichier est vidé, je veux dire que la taille du fichier va à 0 et je ne sais pas pourquoi cela se produit. Existe-t-il une autre commande spécifiquement pour le .tar.gztype de fichiers. Quelle est la procédure pour obtenir ces fichiers compressés. J'utilise un terminal mac.

GIRI
la source
2
Ne devez-vous pas inclure l'adresse du serveur? Quelle est la commande exacte que vous avez tapée?
Faheem Mitha
@FaheemMitha Je suis entré dans le serveur en utilisant la commande sftp. utilisateur sftp [at] serveur et dans le terminal sftp que j'ai utilisé> get filename.tar.gz
GIRI

Réponses:

22

get est une commande sftp légale, mais ne peut pas être utilisée de cette façon.

La syntaxe correcte pour télécharger filename.tar.gzsur votre Mac est:

sftp user@host:/path/to/filename.tar.gz /some/local/folder

(Remplacez userpar l'utilisateur que vous utilisez pour vous connecter au serveur distant, remplacez-le hostpar le nom du serveur distant.)

Il n'y a rien de spécial aux tar.gzfichiers dans la commande ci-dessus, il est générique pour n'importe quelle extension.

Pour l'utiliser, getvous devez d'abord entrer en mode interactif:

  1. Établissez une connexion avec le serveur distant:

    sftp user@host
    

    Attendez que >l'invite sftp apparaisse dans une nouvelle ligne - vous pouvez maintenant taper vos commandes.

  2. Modifiez le chemin d'accès distant en /path/to:

    cd /path/to/
    
  3. Changez le chemin local en /some/local/folder:

    lcd /some/local/folder
    
  4. Utilisez getpour télécharger le fichier:

    get filename.tar.gz
    
jaume
la source
Non, ça ne fonctionne pas, j'ai essayé vos suggestions. essayé de changer les chemins locaux mais aucun effet.
GIRI
Pourriez-vous publier la sortie de la commande sftp?
jaume
Il n'y a pas ce genre de sortie, car le type sftp > get filename.tar.gzne télécharge pas le fichier et la mémoire devient 0.
GIRI
Ni sftp > get filename.tar.gzni, comme indiqué dans votre question, sftp get filename.tar.gzne fonctionnera. La syntaxe correcte est sftp user@host:/path/to/filename.tar.gz /some/local/folder, comme expliqué dans ma réponse. Qu'est - ce qui se passe lorsque vous tapez la commande (remplacer user, host, /path/toet /some/local/folderavec des valeurs qui sont correctes dans votre environnement) dans le terminal puis appuyez sur Entrée? Y a-t-il une sortie? Si oui, veuillez l'ajouter à notre question.
jaume
Il n'y a PAS de sortie. il va juste à la ligne suivante.
GIRI