2012-09-15 183 views
1

使用終端和Shell/Bash命令有沒有辦法從Web目錄中檢索特定文件?即從服務器獲取特定文件

目錄:www.site.com/samples/

副本「的.h」結尾的文件放到一個文件夾

該文件夾中包含的文本文件,以及相關的其他文件都是沒有用的。

謝謝:)

回答

1

有遞歸實現這一目標的多種方式: 1.使用發現

1.1使用-p發現沒有錯誤

cd path; 
mkdir backup 
find www.site.com/samples/ -type d -exec mkdir -p {} backup/{} \; 

1.2查找特定的文件,並複製備份創建遞歸文件夾製作directorys文件夾-p持之以恆權限

find www.site.com/samples/ -name \*.h -exec cp -p {} backup/{} \; 
  1. 使用tar以及實際上是反向類型的工作即要排除的文本文件有關問題的這一答案更符合特定的文件: 您可以按照你喜歡的

    tar --exclude=*.txt --exclude=*.filetype2 --exclude=*.filetype3 -cvzf site-backup.tar.gz www.site.com 
    mv www.site.com www.site.com.1 
    tar -xvzf site-backup.tar.gz 
    
添加有儘可能多的排除
+0

感謝您的回覆。對不起,它花了我很長時間來更新這個..我得到一個文件無法找到,即使我正在採取樣品:http://www.cs.dartmouth.edu/~dwagn/aiproj/我不想單獨下載每一個!有任何想法嗎? – Phorce

+0

它聽起來像遠程web內容,而不是本地文件,這是什麼建議給你的:你可以嘗試:wget -m http://www.cs.dartmouth.edu/~dwagn/aiproj/ ---一旦完成cd www .cs.dartmouth.edu /〜dwagn/aiproj和站點中的所有文件都在本地文件夾中 – Vahid

+0

我無法訪問服務器,這是否會出現問題? – Phorce

1

您可以使用該wget的,但如果沒有鏈接到文件。即它們存在,但它們沒有從任何html頁面引用,那麼bruteforce是唯一的選擇。