Question Est-il possible d’obtenir ou de placer deux fichiers spécifiques à la fois en utilisant SFTP sans caractère générique?


À partir d'un répertoire de dizaines de fichiers, est-il possible d’obtenir ou de mettre deux fichiers à la fois en utilisant SFTP?

Je ne veux pas utiliser de joker parce que je ne connais pas nécessairement les noms de tous les fichiers et que je ne veux pas affecter d’autres fichiers.

J'espère qu'il y a quelque chose comme:

get javascript.gs,stylesheet.css

D'après les recherches effectuées par Google et sur différents échanges Stack, il semble que cela ne soit pas possible.

Est-ce que quelqu'un sait à coup sûr?


4
2018-01-03 11:11


origine




Réponses:


tu peux faire:

sftp user@host << EOF!
get /path/to/file1
get /path/to/file2
EOF!

Mais personnellement, je préfère utiliser scp dans ces cas.


3
2018-01-03 11:48





Si possible, utilisez lftp en tant que client sftp (disponible pour toutes les distributions Linux et * BSD pertinentes dans leurs collections):

lftp sftp://someaccount@somehost.com

Ensuite, vous pouvez utiliser mgetcommander:

mget javascript.gs stylesheet.css

Si lftp n'est pas possible d'utiliser, alors vous pouvez utiliser -b option (batch) en standard sftp commander. Commencez par créer un fichier texte contenant

get javascript.gs
get stylesheet.css

Et puis utilisez la commande

sftp -b yourtextfile.txt someaccount@somehost.com

5
2018-01-03 11:36





Vous ne pouvez pas faire cela avec sftp, la syntaxe de get est: get-path [chemin local], ce qui signifie que le deuxième paramètre, s'il est fourni, sera utilisé pour renommer le fichier sur le système local. De même, put renommerait le fichier téléchargé si un second paramètre est fourni.

Vous pouvez utiliser scp pour le travail

scp user@remote.tld:"/path/to/javascript.gs /path/to/stylesheet.css" /local/path

Vous pouvez également utiliser un script sftp.


2