iT邦幫忙

0

透過http(80 port)就能傳檔的軟體?

各位先進大家好!

小弟想找透過http(80port)就能傳檔的軟體,最好還是能自動每隔一段時間就傳送的。

自己在孤狗上爬了一個上午了,還是沒什麼進展。

請各位先進幫幫忙,提供小弟一些建議。

感謝各位!

conandexter提到:
自動每隔一段時間就傳送

不一定要從 自動傳送 這個角度去想,
可以 自身當一個web server,
讓另外一端 自動來抓 的方式進行。

我之前也有同樣的問題想解決怎麼自動傳檔的問題,
後來是在那想傳出檔案的 XP 上裝一個 web server,
但不想裝那耗資源的IIS,
而是裝這 TinyWeb
安裝使用方式 很簡單:
假設我在 XP 這台 A 機器,想定時上傳到 B XP 這機器的話:
在A上裝這tinyweb:
c:\www\bin\tiny.exe D:\myData

看你要定時上傳的檔案是在 D:\myData 目錄,
就可以設該目錄為tinyweb 的主網頁目錄;
這樣在 B 就可用 wget 或 curl 或任何的 web client,
http://A/xxxx.txt 就抓了 A 的檔案,
也是可達到同樣的目的。

我也碰到個問題,
如果想上傳的檔案是被其他檔案「開啟」的情況下,
會無法被傳出,
這時我就在 D:\myData 裡做個簡單的 batch 檔,
假設檔名為 do_copy.bat 內容類似:
copy /y D:\myData\xxxx.txt D:\getMe.txt

這樣在 B 的機器上,
在抓取前先執行一下「複製」動作,
再做抓該複本的網址,
當然也把這兩動作做成batch檔,
然後由排程執行:
getFile.bat:
curl http://A/do_copy.bat
curl http://A/getMe.txt -o E:\mydata.txt

wget -q http://A/do_copy.bat
wget -q http://A/getMe.txt -O E:\mydata.txt

不妨也可考慮此作法。
6
逮丸逮丸
iT邦大師 1 級 ‧ 2011-05-06 12:37:03
最佳解答

conandexter提到:
每隔一段時間就傳送

看起來是指client透過http自動上傳到server上吧?

假設某web server可上傳的頁面類似像:

<pre class="c" name="code"><form method="POST" enctype='multipart/form-data' action="upload.cgi">
<input type=file name=upload>
<input type=submit name=press value="OK">
</form>

在指令行可透過 curl (當然也有windows版)來做傳送:

<pre class="c" name="code">curl --form upload=@localfilename --form press=OK [網址]

(參考自 http://curl.haxx.se/docs/httpscripting.html裡的4.3 File Upload POST)

如果是要定時傳送的話,
就把指令寫成簡單的batch檔,
用排程去定時執行。
以上是都上傳相同檔名的情況,
且上傳到的網站是會設計成 不會覆蓋檔名的情況。

如果每次上傳的檔名需不同的話,
就需用簡單的語法來讓檔名可以隨時間而動態變化,
這部份可參考站上最常問的相關問題的解法:
如何每日copy 單一檔名到 備份目錄後自動將檔名加上當天備份日期
如何用copy 或script指令,來備份系統日當天的檔案

4
花輪
iT邦大師 1 級 ‧ 2011-05-06 11:55:10

軟體名稱:Http File Server
軟體版本:2.30 Build 279 Beta
授權類型:免費軟體
支援語系:英文
官方網站:http://www.rejetto.com/hfs/
檔案下載:官方網站下載頁面
檔案下載:官方HTTP站下載(2.48MB)
更新日期:2011/5/5-謝謝網友 Neo 推薦
軟體簡介: 只要執行一個小小的檔案,輕鬆架設 HTTP Server,方便你與其他人分享檔案。主要特色如下。
便於進行檔案的分享(上傳或下載)。
支援虛擬目錄。
內建 HTML 模板(Template)。
高度客製化。
可控制使用的頻寬。
可中斷或封鎖特定使用者的連線。
內建動態 IP 更新工具。
可建立使用者帳戶。

http://www.rejetto.com/hfs/?f=dl

4
liurambo0911
iT邦高手 1 級 ‧ 2011-05-06 12:04:17

HTTP 80本來就能傳檔了
網路上沒講 是因為這本來就是IIS的功能之一
你只要弄一台電腦啟動IIS功能即可

排程傳檔要用另外一套
http://vbb.twftp.org/showthread.php?t=3937

4
jay214
iT邦研究生 3 級 ‧ 2011-05-06 13:38:14

Server端 建議用 HFS http://www.rejetto.com/hfs/
Client端 建議用 wget for win32

感謝各位先進的回應!

小弟的用途其實很單純,原本只要能開檔案分享就能做到的事情,礙於兩台電腦之間網路不通,所以只能用傳的,而要分享的檔案也只有一個,檔名也不用變,只要能大約每隔5分鐘更新一次檔案這樣。

目前小弟想到用「TeamViewer」的檔案傳輸功能來達到傳檔的需求,但是另外要能自動化的需求小弟是用很陽春的「EZ鍵盤滑鼠記錄器」來讓它每隔5分鐘幫我按一下傳送,雖然目的是達到了,但是很陽春,又不能在背景執行是個致命的缺點。

請問各位先進有更好的建議嗎? 可以幫我取代掉「EZ鍵盤滑鼠記錄器」?

感謝各位!

conandexter提到:
取代掉「EZ鍵盤滑鼠記錄器」

AutoIt 應可取代。

4
harrier7
iT邦研究生 2 級 ‧ 2011-05-16 18:25:18

用 curl + powershell + task scheduler 能精準滿足版主的需求。

我要發表回答

立即登入回答