史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 網路軟硬體架設技術文件
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2004-01-28, 02:49 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 專門為喜歡下載電影的人寫的script

專門為喜歡下載電影的人寫的script, 喜歡的話給點鼓勵

該指令碼主要是針對不能list的ftp站點

執行指令碼後面必須跟個檔案名參數, 輸入文件總共3或4行,給個例子

ftp://xxx.xxx.com/dvdrip/xxx/cd1/aaa.aaa.r
temp/cd1
47,[5]
[15000000]

[]表示是可選項.
第一行給出url路徑, 如果是*.rar, *.r0,*.r01格式的給到 *.r就可以了
如果是*.part01.rar格式的, 給到*.part就可以了

第二行是存放的本機路徑, 如果以/開頭表示絕對路徑,否則表示相對於home的路徑
第三行表示多少個包, 第二個參數從第幾包開始下載
第四行表示每個包的size, 預設是15000000

另外該script還做了部分url encoding 的工作,主要是過濾掉@,#,space等特殊字串。
我用該指令碼下了大量的電影, 用的程序中不斷修改,很有實用性。


--------------------------------------------------------------------

FLEN=15000000

if [ -z $1 ]; then
echo "Usage:`basename $0` filename"
exit 0
fi

if [ ! -f $1 ]; then
echo "the file $1 does not exist"
exit 0
fi

Url=`sed --quiet -e '1p' $1`
Url2=`echo $Url | sed -e 's/ftp:\/\/[^@/]*@//'`
Url1=`echo $Url | awk -F"$Url2" {'print $1'}`
Url2=`echo $Url2 | sed -e 's/ /%20/;s/#/%23/;s/@/%40/'`
Url=$Url1$Url2
echo $Url
太太S=`sed --quiet -e '2p' $1`
temp=`sed --quiet -e '3p' $1`
Max=`echo $temp | awk -F, {'print $1'}`
Max=`echo $Max | sed --quiet -e 's/^ *//; s/ *$//;p'`
starti=`echo $temp | awk -F, {'print $2'}`
starti=`echo $starti | sed --quiet -e 's/^ *//; s/ *$//;p'`
lll=`sed --quiet -e '4p' $1`

if [ ! -z $lll ] ; then
FLEN=$lll
fi

prefix_l=` echo $太太S | awk '{ print substr($0,1,1) }'`
if [ $prefix_l != "/" ] ; then
太太S=$HOME"/"$太太S
fi

dl()
{
count=`echo $Url | grep -n ".part" | cut -f1 -d:`
if [ -z $count ] ; then
count=0
fi

if [ $count -ge 1 ]; then
i=1
else
i=0
fi

if [ ! -z $starti ]; then
i=$starti
fi

while [ $i -le $Max ]
do
if [ $i -lt 10 ] ; then
downurl=$Url"0"$i
else
downurl=$Url$i
fi

if [ $count -gt 0 ] ; then
downurl=$downurl".rar"
fi

echo $downurl
fname=`basename $downurl`
fname=$太太S"/"$fname

if [ -f $fname ] ; then
len=`ls -l $fname | awk {'print $5'}`
if [ $len -lt $FLEN ] ; then
wget -c -P $太太S $downurl
fi
else
wget -c -P $太太S $downurl
fi

i=`expr $i + 1`
done

if [ $count -eq 0 ] ; then
downurl=$Url"ar"
wget -c -P $太太S $downurl
fi
}

dl
echo "job is done"
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
 



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 09:08 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1