创建收集文件脚本
在这一步中,你将创建一个脚本,把 /etc 目录下最后修改年份为 2022 年的文件复制到 /tmp/etc 目录,同时保留目录结构。
- 打开一个文本编辑器,在
/home/labex/project 目录下创建一个名为 collect_files.sh 的新文件。
- 将以下代码添加到
collect_files.sh 文件中:
#!/bin/zsh
## 脚本:collect_files.sh
## 描述:将 /etc 目录下最后修改年份为 2022 年的文件复制到 /tmp/etc 目录,同时保留目录结构。
source_dir="/etc"
target_dir="/tmp"
year="2022"
## 创建目标目录
mkdir -p "$target_dir"
## 使用 find 命令在源目录中搜索最后修改年份为 2022 年的文件,并将它们复制到目标目录
find "$source_dir" -type f -newermt "$year-01-01"! -newermt "$year-12-31" -exec cp --parents --dereference "{}" "$target_dir" \;
echo "文件复制完成。"
此脚本使用 find 命令在 /etc 目录中搜索 2022 年最后修改的文件。-newermt 和 ! -newermt 选项用于根据文件的最后修改日期过滤文件。然后使用 cp 命令将文件复制到 /tmp/etc 目录,保留目录结构。
- 保存文件。