Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐: 强烈推荐:Ylmf OS 3.0 正式版发布附迅雷高 XP系统下硬盘安装Fedora 14图文教程
搜索:
您的位置: Linux安全网 > Linux入门 > » 正文

linux shell编程 for 循环问题

来源: 未知 分享至:

一个文件夹里有30000(00000-30000)个文件,我想把他分到30个文件夹(代码生成)内,并且文件夹名为00000-01000,01001-02000 .....
 


1、新建00000-30000
#!/bin/bash
#touch
i=0
while [ $i -le 30000 ]
do
touch $(printf "%05d\n" $i)
((i++))
done
2、新建目录及复制文件
#!/bin/bash
i=1
aaa=$i+1
path=/tmp/test/111
path2=/tmp/test/1
#mkdir $path/'0'$i'000''-''0'$aaa'000'
#$i=$[$i+1]
#cp $path2/00*  $path/'0'$i'000''-''0'$aaa'000'
for i in $(seq 30);
do
bbb=$[$i-1]
if [ $i -lt 10 ];then
mkdir  $path/'0'$bbb'001''-''0'$i'000'
cp $path2/'0'$bbb*  $path/'0'$bbb'001''-''0'$i'000'
else
bbb=$[$bbb+1]
i=$[$i-1]
mkdir $path/$i'001''-'$bbb'000'
cp $path2/$i* $path/$i'001''-'$bbb'000'
fi
done

存在的问题:09000-10000 会生成9000-10000,因为才学这个地方没有好,希望大家批评指正,谢了!!!

 


Tags: shell
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史