find -mtime用法
时间: 2023-12-22 18:06:46 浏览: 108
`find -mtime` 是一个Linux/Unix命令,用于查找在指定时间内被修改的文件。`-mtime`用于指定文件修改的时间,以天为单位。
下面是`find -mtime`的用法:
```
find [path] -mtime [number]
```
其中,`[path]`是要搜索的目录路径,可以指定多个目录路径;`[number]`是指文件修改时间与当前时间相隔的天数,可以使用以下符号:
- `+n`表示查找n天前修改的文件。
- `-n`表示查找n天内修改的文件。
- `n`表示查找修改时间恰好为n天前的文件。
例如,查找在当前目录下修改时间在10天以内的文件,可以使用以下命令:
```
find . -mtime -10
```
如果要查找在`/home`目录下修改时间在30天以上的文件,可以使用以下命令:
```
find /home -mtime +30
```
相关问题
find 遗漏 -exec 的参数
当`find`命令遗漏`-exec`参数时,它通常用于执行一个命令对找到的每个匹配项进行操作。例如,在你的引用[1]中提到的命令:
```bash
find /var/ -mtime +10 -name "*.tar.gz" -exec rm -rf {} ;
```
这里`-exec`后面应该跟着要执行的命令及其参数,如`rm -rf`来删除过期的`.tar.gz`文件。完整的语法应该是:
```bash
find /var/ -mtime +10 -name "*.tar.gz" -exec rm -rf {} \;
```
注意`{}`是一个通配符,代表`find`找到的每个匹配项。`\;`表示命令结束。如果省略`\;`,可能会导致意外的行为。
另外,如果你想要使用正则表达式进行更复杂的查找,可以创建一个正则表达式对象并调用`findall`方法,如引用[2]所示:
```python
import re
l = re.findall('abcdefabcdef', 0, 6)
```
在这个例子中,`re.findall`会返回字符串中从位置0到6的所有子串,与正则模式匹配的部分。
find用法
find命令用于在指定目录下查找符合条件的文件。
常用的用法有:
1. 查找指定文件名的文件:
```
find /path/to/directory -name "filename"
```
示例:查找当前目录下所有以".txt"结尾的文件
```
find . -name "*.txt"
```
2. 查找指定类型的文件:
```
find /path/to/directory -type f -name "filename"
```
示例:查找当前目录下所有的文件
```
find . -type f
```
3. 查找指定日期范围内修改过的文件:
```
find /path/to/directory -type f -mtime +n -mtime -m -name "filename"
```
示例:查找当前目录下在7天到30天之间修改过的所有文件
```
find . -type f -mtime +7 -mtime -30
```
4. 查找指定大小的文件:
```
find /path/to/directory -type f -size +n[k,M,G] -size -m[k,M,G] -name "filename"
```
示例:查找当前目录下大小在5MB以上且小于10MB的文件
```
find . -type f -size +5M -size -10M
```
以上是find命令的一些常用用法,更多用法请查看find命令的man手册。
阅读全文