分享一个脚本建多级目录的脚本,批量复制的脚本

    linux下的bash脚本,据说很简单,但是我没有学过脚本,甚至语法的书我都没看过,所以,脚本不会写,但大概能看懂啥意思,也不想刻意花大量时间去学。

这个脚本是这样的,我要在某个目录下建立很多目录,例如000,001,002,003...大概1000个,而在每一个子目录中还要建立子目录,也是000,001,002,...大概1000个,最终这些最底层目录下放文件,文件的目录大概是这样data/000/008/*.txt,现在要建立这样的目录结构,人工去建立肯定是打死也不想做的,于是想简单偷懒,从网上找,找了1个多小时,还别说,找到了,但是来源,没记录,所以先分享记录下吧,下面是代码:

#!/bin/sh
for i in $(seq -w 1 999)
do
	for j in $(seq -w 1 999)
	do
		mkdir -p NewRingFile22/$i/$j
	done
done
    我把它命名为makedirs.sh,linux下运行:./makedirs.sh,最终目录结构(目录下运行:tree)如下图:


这是一部分,目录062下还有目录001~999,以上代码很简单,却可以帮助解决很多繁杂的问题,语法也就循环里面的do。。done,核心是mkdir -p ,表示允许有父目录,不懂的回去在linux下:man mkdir 

        下面再说一个批量复制并重命名的脚本,一般情况发生在测试的时候,比如你只有一个带处理数据,要测试1W个这样的数据,要写个脚本,复制+重命名,下面是代码:

#!/bin/bash
i=0
F=a
while [$i -le 1000] #循环1000次,直到小于i,即0
do
    cp -vf *.txt $F$i.txt   #复制*.txt为ai.txt,i为变量,每次+1
    let i+1
done
        非常方便,要多用这种简约但很精髓的脚本,并尝试着去写,如果用C或其他语言去写。。。犹如用大斧子在削铅笔。结果的图自己回去运行就看到了




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值