Tôi đang cố gắng thu thập thông tin FTP và kéo xuống tất cả các tập tin đệ quy.Ruby FTP Tách tập tin từ các thư mục
Cho đến bây giờ tôi đã cố gắng để kéo xuống một thư mục với
ftp.list.each do |entry|
if entry.split(/\s+/)[0][0, 1] == "d"
out[:dirs] << entry.split.last unless black_dirs.include? entry.split.last
else
out[:files] << entry.split.last unless black_files.include? entry.split.last
end
Nhưng hóa ra, nếu bạn chia danh sách lên cho đến khi không gian cuối cùng, tên tập tin và thư mục với các không gian là sai vời. Cần một chút trợ giúp về logic ở đây.
Bạn cũng có thể sử dụng 'mục [1 ..- 1] .split [5] [13 ..- 1]' để lấy đường dẫn và 'mục [0]' để lấy kiểu –
Cụm từ thông dụng này có hoạt động cho tất cả các trường hợp? Có rất nhiều loại máy chủ FTP xung quanh. Chúng tôi có các khách hàng sử dụng một số máy chủ dựa trên cửa sổ độc quyền tối nghĩa và danh sách tệp được họ trả về trông hoàn toàn khác với các phiên bản Linux. Vì vậy, những gì tôi đã kết thúc làm là cho mỗi tập tin/mục nhập thư mục tôi thử CD vào nó và nếu điều này không làm việc - xem xét nó một tập tin :) Làm việc như một say mê. –