加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Bash:根据名字的第一个字母移动文件

发布时间:2020-12-15 21:15:46 所属栏目:安全 来源:网络整理
导读:我有大量的文件,我试图按字母顺序组织成三个文件夹.我正在尝试将bash脚本放在一起,它能够获取文件的第一个字母,然后将其移动到基于第一个字母的文件夹中. 例如: 文件 – 文件夹名称 苹果 – A?G 香蕉 – A?G 番茄 – H T 斑马 – ü-Z 任何提示将不胜感激!
我有大量的文件,我试图按字母顺序组织成三个文件夹.我正在尝试将bash脚本放在一起,它能够获取文件的第一个字母,然后将其移动到基于第一个字母的文件夹中.

例如:

文件 – >文件夹名称

苹果 – > A?G

香蕉 – > A?G

番茄 – > H T

斑马 – > ü-Z

任何提示将不胜感激! TIA!

解决方法

#!/bin/bash
dirs=(A-G H-T U-Z)
shopt -s nocasematch

for file in *
do
    for dir in "${dirs[@]}"
    do
        if [[ $file =~ ^[$dir] ]]
        then
            mv "$file" "$dir"
            break
        fi
    done
done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读