จะทำการ grep บน FTP ได้อย่างไร?


10

ฉันพยายามค้นหาคำสั่งที่คล้ายกันในncftp(อันที่จริงนี่เป็นไคลเอ็นต์เทอร์มินัล ftp เดียวที่ฉันใช้) และฉันไม่พบมัน

มีวิธี (ถ้าเป็นไปได้ทั้งหมด) ในการใช้grepคำสั่งบนเซิร์ฟเวอร์ระยะไกลเพื่อค้นหาสตริงในไฟล์อะไร


คำตอบ:



5

คุณสามารถใช้curlftpfsเพื่อติดตั้ง ftp ระยะไกลเป็นดิสก์ภายในเครื่องและจัดการกับไฟล์เช่นเดียวกับในเครื่องของคุณ


2
เช่นเดียวกับทุกสิ่งทุกอย่างที่ยึดตามนี่ก็หมายความว่าคุณจะถ่ายโอนข้อมูลทั้งหมดไปยังโฮสต์ของคุณเอง
Stéphane Gimenez

1
ใช่! ฉันจะ. แต่มันก็ขึ้นอยู่กับงานที่คุณต้องทำ เมื่อคุณต้องการ grep บางอย่างในกรณีส่วนใหญ่คุณสามารถละเว้นไฟล์ nontext (และพวกมันจะไม่ถูกถ่ายโอน) และอาจเป็นส่วนหนึ่งของไฟล์ข้อความ ดังนั้นในกรณีนี้ขนาดการโอนผลรวมของคุณอาจต่ำกว่าในกรณีที่คุณจะถ่ายโอนข้อมูลทั้งหมดจากไซต์ระยะไกล
เร่ง

4

คุณควรติดตั้งไดเรกทอรี FTP ระยะไกลเพื่อทำสิ่งนี้อย่างไรก็ตามได้รับการเตือนว่าไฟล์ทั้งหมดที่คุณ grep จะต้องดาวน์โหลดสำหรับการดำเนินการนี้

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
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.