编写一个shell脚本程序,可以实现对指定文件类型的文件进行备份,并对备份文件进行更名:要求每次最新备份的数据存放到backupfile文本文件中,之前备份的文件更名为backupfile1,再之前备份的文件更名为 backupfile2,依次类推backupfilen,不对n的数量做限制。
时间: 2023-06-20 19:06:38 浏览: 105
shell备份文件、重命名文件、删除指定文件的3个脚本分享
以下是一个实现该功能的shell脚本程序:
```bash
#!/bin/bash
# 备份文件类型
filetype=".txt"
# 备份文件名
filename="backupfile"
# 查找所有符合条件的文件
files=$(find . -type f -name "*$filetype")
# 获取最新备份文件编号
if [ -f $filename ]; then
lastnum=$(grep -o "[0-9]*" $filename | tail -1)
if [ -n "$lastnum" ]; then
num=$((lastnum + 1))
else
num=1
fi
else
num=1
fi
# 备份文件
for file in $files; do
cp $file "$filename$num$filetype"
done
# 更新备份文件
echo $num > $filename
```
该脚本程序首先定义了备份文件类型和备份文件名,然后使用`find`命令查找所有符合条件的文件,并使用`grep`命令获取最新备份文件编号。接着使用`cp`命令备份文件,并将备份文件编号写入备份文件中。每次运行脚本程序时,最新备份的数据将存放在`backupfile.txt`文件中,之前备份的文件将被更名为`backupfile1.txt`、`backupfile2.txt`等。
阅读全文