跳转至

Index

  • 编写一个带参数的脚本,实现下载文件的效果,参数有两个:第一个参数为文件下载链接,第二个参数为目录,即下载后保存的位置
  • 注意要考虑目录不存在的情况,脚本需要提示用户是否创建目录
    #!/bin/bash
    
    ##无限循环,目的是为了创建目录
    while :
    do
        ##目录存在,就跳出循环了
        if [ -d $2 ]
        then
            break
        else
        ## 目录不存在,会询问是否创建
            read -p "目录不存在,是否要创建?(输入y或者n)" yn
            case $yn in
                y|Y)
                    mkdir -p $2
                    break
                    ;;
                n|N)
                    ## 当用户输入n,意味着他不想创建目录,然后脚本直接退出即可
                    exit 2 
                    ;;
                *)
                    ## 如果用户输入的提示词并不符合要求,则需要再次询问用户
                    echo "你只能输入y或者n"
                    continue
                    ;;
            esac
        fi
    done
    
    ##进入到目标目录里
    cd $2
    ##使用wget命令来下载,这里假设wget命令存在,1并且用户提供的链接没问题
    wget $1
    
    if [ $? -eq 0 ];then
        echo "下载成功"
        exit 0
    else
        echo "下载失败"
        exit 1
    fi
    


总结

  1. 脚本参数为$1,$2
  2. read -p 使用在和用户交互的场景