linux提取指定前缀文件到其他文件夹

#linux #指定前缀 #指定后缀
问题描述:提取指定前缀文件到其他文件夹,如果没有对应子文件夹,则新建对应名称的子文件夹。

:指定后缀同理,复制同理

程序需要修改的地方(改成自己的路径):

A_DIR="/home/1_rawdataDF/"

B_DIR="/home/1_rawdataDFS4/"

PREFIX="s4"

bash 复制代码
# 原始文件夹
A_DIR="/home/1_rawdataDF/"
# 目标文件夹
B_DIR="/home/1_rawdataDFS4/"
# 指定前缀
PREFIX="s4"

if [ ! -d "$A_DIR" ]; then
    echo "A
X(: $A_DIR"
    exit 1
fi

if [ ! -d "$B_DIR" ]; then
    echo "
X(: $B_DIR"
    exit 1
fi

for sub_dir in "$A_DIR"/*; do
    if [ -d "$sub_dir" ]; then

        sub_name=$(basename "$sub_dir")
        

        b_sub_dir="$B_DIR/$sub_name"
        

        if [ ! -d "$b_sub_dir" ]; then
            mkdir -p "$b_sub_dir"
            if [ $? -ne 0 ]; then
                echo "no $b_sub_dir"
                continue
            fi
        fi
        

        find "$sub_dir" -type f -name "$PREFIX*" -exec mv {} "$b_sub_dir/" \;
        

        echo "ok$sub_dir -$PREFIX* move $b_sub_dir"
    fi
done

echo "all done!"
相关推荐
linux kernel16 分钟前
第六部分:数据链路层
服务器·网络
聆风吟º4 小时前
CANN开源项目深度实践:基于amct-toolkit实现自动化模型量化与精度保障策略
运维·开源·自动化·cann
Coder个人博客5 小时前
Linux6.19-ARM64 mm mmu子模块深入分析
大数据·linux·车载系统·系统架构·系统安全·鸿蒙系统
较劲男子汉7 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
Doro再努力8 小时前
Vim 快速上手实操手册:从入门到生产环境实战
linux·编辑器·vim
wypywyp8 小时前
8. ubuntu 虚拟机 linux 服务器 TCP/IP 概念辨析
linux·服务器·ubuntu
风流倜傥唐伯虎8 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
Doro再努力8 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
senijusene8 小时前
Linux软件编程:IO编程,标准IO(1)
linux·运维·服务器
不像程序员的程序媛8 小时前
Nginx日志切分
服务器·前端·nginx