Як виконати grep на FTP?


10

Я спробував шукати подібну команду в ncftp(фактично це єдиний термінальний ftp-клієнт, який я використовував), і не знайшов його.

Який спосіб (якщо можливо взагалі) використовувати grepкоманду на віддаленому сервері, шукати рядки у файлах?


Відповіді:


5

Стандартний протокол ftp цього не дозволяє (Ви можете перевірити список команд ). Тож вам доведеться завантажувати все лише для того, щоб мати змогу пограбувати.


5

Ви можете використовувати curlftpfs для монтажу віддаленого ftp як локального диска та маніпулювання файлами, як на локальній машині.


2
Як і у всьому, що базується на монтажі, це означає, що ви передасте всі дані своєму власнику.
Стефан Гіменез

1
Так, буде. Але це також залежить від завдання, яке потрібно виконати. Коли вам потрібне щось згорнути, у більшості випадків ви можете проігнорувати нетекстові файли (і вони не будуть передані), а може бути і частиною текстових файлів. Тож у цьому випадку розмір переказу вашої суми може бути меншим, ніж у випадку, якщо ви перенесите цілі дані з віддаленого сайту.
пік

4

Ви повинні локально встановити віддалений каталог FTP, щоб зробити це, однак попередити, що всі файли, які ви збираєте , потрібно буде завантажити для цієї операції.

SSH у віддалену машину та запустіть grep через це, якщо можливо, щоб зберегти пропускну здатність.


0

Припускаючи, що ви використовуєте простий ftp через командний рядок, використовуйте команду dir з опцією -Rl для пошуку рекурсивно та скопіюйте його у файл, а потім шукайте файл за допомогою grep, find або будь-яким іншим способом, який підтримується у вашій ОС.

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

0

З допомогою lftp

Спочатку захопіть все, починаючи від ftp до файлу

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

Далі виконайте файл grep для файлу:

$ grep FILE sources-list.txt
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.