shell编程–循环拷贝文件到另外一个目录

本文介绍了一个Shell脚本,用于循环遍历数组中的模块名,并检查对应目录下是否有文件。如果目的目录文件数量为0,则从源目录/home/lgw/复制文件到/tmp/uploadFiles/。脚本还展示了如何将此脚本注册为Linux的cron定时任务,每10分钟执行一次。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

shell编程–循环拷贝文件到另外一个目录

背景

一直不太熟悉shell的编程语法,正好在和其他服务联调的时候,需要我循环发送数据,我这边发数据就是从特定目录里面取数据然后发送http请求。我的想法就是写个脚本,然后注册到linux上的定时任务里面,每隔10分钟执行一次下面的脚本以此来模拟不断制造源数据然后通过数据发送服务取文件发送给消费方服务。

脚本代码

#!/bin/bash
# 定义模块名称
module_array=('a' 'b' 'c')
module_array_length=${#module_array[*]}
for (( i=0;i<$module_array_length;i++ ))
do
    #如果目的文件数量为0,就从源目录复制文件
    current_dir_count=(`ls /tmp/uploadFiles/${module_array[i]} | wc -l`)
    if [ ${current_dir_count} -eq 0 ]; then
        cp -rf /home/lgw/${module_array[i]}/* /tmp/uploadFiles/${module_array[i]}
        #echo "从源目录/home/lgw/${module_array[i]}拷贝文件到目的目录/tmp/uploadFiles/${module_array[i]}成功"
    fi
done

脚本注册linux定时任务

  1. vim /etc/crontab
  2. 添加 */10 * * * * root /home/lgw/testData.sh
  3. 重启crontab生效 service crond restart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值