linux批量拷贝文件日期,linux shell批量拷贝文件

有时候我们需要将一个文件拷贝好几分。批量添加用户也是同样的原理的。

使用到的知识:

test 或 [ :可用来表示比较的

算数比较

-eq    相等

-ne    不等

-gt    大于

-ge    大于等于

-lt    小于

-le    小于等于

!    取反

文件条件测试

-d  是否为目录

-f    是否为文件

-g    文件的set-group-id位是否被设置

-r    文件是否可读

-s    文件是否不为空白文件,文件大小不为零,结果为真。

-u    文件的set-user-id为是否被设置

-w    文件是否可写

-x    文件是否可以执行

获取运行时传递的参数

$1、$2....$n :表示得到第1个,第2个。。。。第n个参数。(不包括文件的名字)

$@   被扩展成 "$1" "$2" ... "$n"

$# 参数的个数

if 语句的格式

if condition

then

statements

else

statements

fi

while语句的格式

while condition

do

statements

done

下面直接看代码吧。(由于使用了算数计算。我使用的是bash shell。在ubunut12.04中运行成功。)

#/bin/bash

argc=$#

if [ $argc -lt 2 ]

then

echo "请输入两个参数,依次为要拷贝的文件和次数"

exit 0

fi

file=$1

count=$2

left=${file%.*}  #取出文件的名字。如a.tar.gz 的结果为a.tar

right=${file##*.}  #得到文件的后缀。如a.tar.gz 的结果为gz

i=0

if [ -f "$file" ]   #判断文件是否存在。

then

while [ $i -le $count ]

do

cp $file "$left$i.$right"  #"$left$i.$right"组合出新的文件名字

let "i=$i + 1" #对i的值加一

done

else

echo "$file is not exist\n"

fi

blog:

http://blog.csdn.net/rentiansheng/article/details/8851684

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值