shell脚本:遍历指定文件夹下.jar后缀的文件,并备份到目标文件夹
批量备份源文件夹下的所有jar包 并用原名+日期时间重命名
过程如下:
创建一个sh文件:
vim test.sh
按 i 进入insert模式,编写脚本如下:
#!/bin/bash
#获取时间
time=$(date "+%Y%m%d%H%M%S")
echo $time
#备份方法
function backup(){
echo "源文件夹: $1"
echo "备份文件夹:$2"
targetDir=`ls $1`
#遍历源文件夹中的文件
for fileName in $targetDir
do
#echo $fileName
#echo ${fileName:0-4}
#判断文件后4位是否为.jar
if [[ ${fileName:0-4} == '.jar' ]];
then
#copy后缀为jar的文件到备份文件夹并重命名
cp /data/a/$fileName /data/b/${fileName%%.*}-$time.jar
#判断本分操作是否成功
if [ $? -eq 0 ];
then
echo "备份 $fileName 成功"
else
echo "备份 $fileName 失败"
fi
fi
done
}
backup $1 $2
按esc退出insert
输入 :wq 保存
在脚本文件所在文件夹输入 ./test.sh [源文件夹] [备份文件夹] 运行脚本
运行成功后,在b文件夹查看备份文件