我想递归地列出给定目录中的所有文件,及其完整路径和时间戳。像这样的东西:
10:30 Dec 10 2010 /tmp/mydir/myfile
Run Code Online (Sandbox Code Playgroud)
我试过:
find . -type f -exec ls -la {} \;
Run Code Online (Sandbox Code Playgroud)
但这并没有给我完整的路径。
ls在每个文件上运行并过滤结果:
find "$PWD" -type f -exec ls -la {} \; | cut -d ' ' -f 6-
Run Code Online (Sandbox Code Playgroud)
输出:
Jun 14 00:02 /tmp/superuser.com/questions/370070/bar
Jun 14 20:24 /tmp/superuser.com/questions/228529/file with multiple spaces
Jan 2 1972 /tmp/superuser.com/questions/228529/old_file
Run Code Online (Sandbox Code Playgroud)
使用-printf:
find "$PWD" -type f -printf "%t %p\n"
Run Code Online (Sandbox Code Playgroud)
输出:
Thu Jun 14 00:02:47.0173429319 2012 /tmp/superuser.com/questions/370070/bar
Thu Jun 14 20:24:16.0947808489 2012 /tmp/superuser.com/questions/228529/file with multiple spaces
Sun Jan 2 03:04:05.0000000000 1972 /tmp/superuser.com/questions/228529/old_file
Run Code Online (Sandbox Code Playgroud)
stat在每个文件上运行 GNU :
find "$PWD" -type f -exec stat --format '%y %n' {} \;
Run Code Online (Sandbox Code Playgroud)
输出:
2016-03-30 04:32:10.034718786 +0300 /etc/passwd
2015-12-21 19:30:07.854470768 +0200 /etc/group
Run Code Online (Sandbox Code Playgroud)
提示:如果你有 GNU find,\;可以替换为\+.
| 归档时间: |
|
| 查看次数: |
10719 次 |
| 最近记录: |