shell 判断文件的生成时间是否早于三天前,是的话将此文件删除
时间: 2023-02-06 18:45:24 浏览: 284
可以使用以下命令来判断文件的生成时间是否早于三天前,并在满足条件时删除该文件:
```
find /path/to/directory -type f -mtime +3 -delete
```
其中,`/path/to/directory` 是文件所在的目录的路径,`-type f` 表示只搜索文件(不包括目录),`-mtime +3` 表示文件的修改时间早于三天前,`-delete` 表示删除找到的文件。
注意,该命令会删除所有满足条件的文件,因此请谨慎使用。如果只想删除某个特定的文件,可以在命令的末尾加上文件名作为筛选条件。例如:
```
find /path/to/directory -type f -mtime +3 -name "specific_file.txt" -delete
```
此命令只会删除名为 `specific_file.txt` 的文件,如果有多个文件需要删除,可以使用通配符(例如 `*.txt`)来匹配多个文件。
相关问题
shell 判断文件的生成时间是否早于三天前,是的话输出yes
可以使用 `find` 命令来判断文件的生成时间是否早于三天前。
例如,要判断文件 `/path/to/file` 的生成时间是否早于三天前,可以使用以下命令:
```
find /path/to/file -mtime +3 -print
```
如果文件的生成时间早于三天前,则会输出文件的路径;如果文件的生成时间不早于三天前,则不会有任何输出。
要在脚本中使用这个命令,可以将其与 `if` 语句结合使用,如下所示:
```
if find /path/to/file -mtime +3 -print; then
echo "Yes"
else
echo "No"
fi
```
在这个脚本中,如果文件的生成时间早于三天前,则会输出 "Yes";如果文件的生成时间不早于三天前,则会输出 "No"。
shell 判断文件的修改时间是否早于三天前,是的话输出yes
可以使用 `find` 命令来判断文件的修改时间是否早于三天前。
例如,要判断文件 `/path/to/file` 的修改时间是否早于三天前,可以使用以下命令:
```bash
find /path/to/file -mtime +2 -print
```
如果文件的修改时间早于三天前,则会输出文件的路径;如果文件的修改时间不早于三天前,则不会有输出。
要输出 "yes",可以使用以下命令:
```bash
if find /path/to/file -mtime +2 -print; then
echo "yes"
fi
```
这样,如果文件的修改时间早于三天前,就会输出 "yes";否则不会有输出。
阅读全文