shell中的for循环遍历目录

1 目录结构说明
  1. a. 文件名 convert_video_to_images.sh
  2. b. /User/document/list目录下有A1目录
  3. c. A1目录下有文件v_Skiing_g01_c01.avi、v_Skiing_g01_c02.avi、v_Skijet_g01_c02.avi、v_Skijet_g01_c03.avi
2 测试代码
for folder in $1/*
do
    echo $folder
    echo "*********************"
    for file in "$folder"/*.avi
    do
        if [[ ! -d "${file[@]%.avi}" ]]; then
            echo "-----------------"
            echo ${file[@]%.avi}
            #mkdir -p "${file[@]%.avi}"
        fi
        #ffmpeg -i "$file" -vf fps=$2 "${file[@]%.avi}"/%05d.jpg
    done
done
3 说明与注解
  1. 在终端输入(sudo) ./convert_video_to_images.sh /Users/document/list
  2. 使用(sudo) ./convert_video_to_images.sh ./list 失败,脚本不支持相对路径
  3. 输出如下,[@]%具有通配符功能
    /Users/document/list/A1
    *********************
    -----------------
    /Users/document/list/A1/v_Skiing_g01_c01
    -----------------
    /Users/document/list/A1/v_Skiing_g01_c02
    -----------------
    /Users/document/list/A1/v_Skijet_g01_c02
    -----------------
   /Users/document/list/A1/v_Skijet_g01_c03
4 拓展应用
  1. 将#注释部分去掉,安装ffmpeg库,在终端输入(sudo) ./convert_video_to_images.sh /Users/document/list 5
  2. ffmpeg库使用,使用命令ffmpeg --help查看
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值