shell 来遍历某个目录下不同层级的所有文件并输出文件的日期
时间: 2023-09-16 07:05:29 浏览: 145
### 回答1:
可以使用以下命令来遍历目录下的文件并输出它们的日期:
```bash
find /path/to/dir -type f -exec stat -c %y {} \;
```
这条命令会在目录`/path/to/dir`下查找所有文件(`-type f`),然后使用`stat`命令来查看每个文件的日期(`%y`),并输出(`-exec`)。
如果你想要遍历目录的子目录,可以在命令中加入`-mindepth 1`和`-maxdepth n`选项来限制遍历的深度。例如,如果你想要遍历所有子目录(包括当前目录),可以使用以下命令:
```bash
find /path/to/dir -mindepth 1 -maxdepth 1 -type f -exec stat -c %y {} \;
```
注意: 上述命令中的`/path/to/dir`应该替换为你想要遍历的目录的实际路径。
### 回答2:
在Shell脚本中,可以使用`find`命令来遍历某个目录下不同层级的所有文件,并使用`stat`命令来输出文件的日期。
下面是一个示例的Shell脚本代码:
```shell
#!/bin/bash
# 设置要遍历的目录
directory="/path/to/directory"
# 使用find命令遍历目录下所有文件,并输出日期
find "$directory" -type f -exec stat -c "%n %y" {} \;
```
上述代码中,`find`命令通过`-type f`参数指定只查找普通文件(排除目录和符号链接),然后使用`-exec`参数传递给`stat`命令来输出文件路径和日期。`%n`表示文件路径,`%y`表示最后修改日期。
你可以将`/path/to/directory`替换为你要遍历的目录的实际路径,保存脚本为一个`.sh`文件,然后在Shell中运行脚本即可。
运行脚本后,它将遍历指定目录下的所有文件,并输出每个文件的路径和最后修改日期。
### 回答3:
在shell脚本中,可以使用find命令来遍历指定目录下的文件,并输出文件的日期。
首先,我们需要使用find命令来查找指定目录下的所有文件,并使用-exec选项来执行输出日期的操作。下面是一个示例的shell脚本:
```
#!/bin/bash
directory="/path/to/directory" # 指定要遍历的目录
# 使用find命令遍历目录下的文件,并输出文件的日期
find "$directory" -type f -exec stat -c "%n %y" {} \;
```
上述脚本中,`/path/to/directory`需要替换为你要遍历的目录的实际路径。
`find`命令使用`-type f`选项来指定只查找文件,不包括目录。`-exec`选项用于在查找到的每个文件上执行后面的命令。`stat -c "%n %y"`命令用于输出文件的路径和修改日期。
运行脚本后,就会输出指定目录下所有文件的日期。可以根据实际需求对输出进行进一步处理或保存到文件中。
阅读全文