題目
創(chuàng)建一個(gè)函數(shù)谒兄,能接受兩個(gè)參數(shù):
- 第一個(gè)參數(shù)為URL摔桦,即可下載的文件;第二個(gè)參數(shù)為目錄承疲,即下載后保存的位置邻耕;
- 如果用戶給的目錄不存在,則提示用戶是否創(chuàng)建纪隙;如果創(chuàng)建就繼續(xù)執(zhí)行赊豌,否則,函數(shù)返回一個(gè)51的錯(cuò)誤值給調(diào)用腳本绵咱;
- 如果給的目錄存在碘饼,則下載文件;下載命令執(zhí)行結(jié)束后測試文件下載成功與否悲伶;如果成功艾恼,則返回0給調(diào)用腳本,否則麸锉,返回52給調(diào)用腳本
代碼實(shí)現(xiàn)
!/bin/bash
url=$1 # 第一個(gè)參數(shù)
dir=$2 #第二個(gè)參數(shù)
download() #函數(shù)名
{
cd $dir >> /dev/null 2>&1 #不輸出信息到終端
if [ $? -ne 0 ] # 如果返回狀態(tài)不為0钠绍,表示不存在這樣的文件或路徑
then
read -p “$dir No such file or directory,create?(y/n)” answer #詢問是否創(chuàng)建
if [ “$answer” == “y” ] #創(chuàng)建
then
mkdir -p $dir
cd $dir
wget $url 1> /dev/null 2>&1 #判斷下載是否成功的狀態(tài)值
else # 不創(chuàng)建
return “51”
fi
fi
if [ $? -ne 0 ] #如果下載不成功(狀態(tài)值不為0)
then
return “52”
fi
}
download $url $dir
echo $? # 返回最終執(zhí)行download 函數(shù)的狀態(tài)值