Comment effectuer grep sur FTP?

10

J'ai essayé de rechercher une commande similaire dans ncftp(en fait, c'est le seul client ftp terminal que j'ai utilisé) et je ne l'ai pas trouvé.

Quelle est la façon (si possible du tout) d'utiliser la grepcommande sur le serveur distant, pour rechercher des chaînes dans les fichiers?

Bojan Savic
la source
Voir

Réponses:

5

Le protocole ftp standard ne le permet pas (vous pouvez consulter la liste des commandes ). Il vous faudrait donc tout télécharger juste pour pouvoir y grep.

Stéphane Gimenez
la source
5

Vous pouvez utiliser curlftpfs pour monter le ftp distant en tant que disque local et manipuler avec des fichiers comme sur votre machine locale.

se ruer
la source
2
Comme pour tout ce qui est basé sur le montage, cela implique que vous transférerez l'intégralité des données vers votre propre hôte.
Stéphane Gimenez le
1
Oui, il sera. Mais cela dépend également de la tâche que vous devez effectuer. Lorsque vous avez besoin de quelque chose dans la plupart des cas, vous pouvez ignorer les fichiers non textuels (et ils ne seront pas transférés) et peut-être faire partie des fichiers texte. Donc, dans ce cas, la taille de votre transfert peut être inférieure à celle au cas où vous transféreriez toutes les données du site distant.
précipiter le
4

Vous devez monter localement le répertoire FTP distant pour ce faire, cependant, soyez averti que tous les fichiers que vous grep devront être téléchargés pour cette opération.

SSH dans la machine distante et exécutez grep par là, si possible, pour économiser la bande passante.

WhyNotHugo
la source
0

En supposant que vous utilisez un ftp simple via la ligne de commande, utilisez la commande dir avec l'option -Rl pour effectuer une recherche récursive et le copier dans un fichier, puis recherchez le fichier à l'aide de grep, find ou de toute autre manière prise en charge sur votre système d'exploitation.

ftp> dir -Rl education.txt
output to local-file: education.txt? y
227 Entering Passive Mode (9,62,119,15,138,239)
150 Opening ASCII mode data connection for file list
226 Transfer complete
SmitaK
la source
0

En utilisant lftp

Commencez par tout saisir, du ftp au fichier

$ lftp http://downloads.site.com/sources> find . > sources-list.txt

Procédez ensuite à grep sur le fichier:

$ grep FILE sources-list.txt
cy8g3n
la source