Skip to content

Latest commit

 

History

History
47 lines (44 loc) · 1.1 KB

33.md

File metadata and controls

47 lines (44 loc) · 1.1 KB

题目要求

定义一个shell函数,能接受两个参数,满足以下要求:  

  1. 第一个参数为URL,即可下载的文件,第二个参数为目录,即下载后保存的位置
  2. 如果用户给的目录不存在,则提示用户是否创建,如果创建就继续执行,否则,函数返回一个51的错误值给调用脚本
  3. 如果给的目录存在,则下载文件,下载命令执行结束后测试文件下载成功与否,如果成功,则返回0给调用脚本,否则,返回52给调用脚本

参考答案

#!/bin/bash
if [ $# -ne 2 ]
then
   echo "你必须要输入两个参数,第一个参数是网址,第二个参数是目录." 
   exit 1
fi

if [ ! -d $2 ]
then
    while :
    do
    echo "你输入的第二个参数,并不是一个存在的目录。是否要创建该目录呢?(y|n): "c
    case $c in 
	y|Y)
	    mkdir -p $2
	    ;;
	n|N)
	    exit 51
	    ;;
	*)
	    echo "请输入y或者n."
	    continue
	    ;;
    esac
    done
else
    cd $2
    wget $1 
    if [ $? -eq 0 ]
    then
	exit 0
    else
	echo "下载失败."
	exit 52
    fi
fi