linux 触摸具有匹配日期的文件
linux touch files with matching date
我有一堆文件夹,里面有很多组文件,文件名匹配,扩展名不同,例如
foo.a
foo.b
foo.c
bar.a
bar.b
bar.c
baz.a
baz.b
baz.c
.a 扩展名的文件日期正确,但我需要设置其他具有相同文件名的文件的修改日期以匹配。我可以列出所有扩展名为 .a 的文件,trim 这样
find -name '*.a'| sed 's/\(.*\)\..*//'
我知道它会涉及到 "touch --reference",但就我所知。帮忙?
尝试:
for f in *.a; do touch -r "$f" "${f%.a}".*; done
工作原理:
for f in *.a; do
这会遍历所有扩展名为 .a
的文件
touch -r "$f" "${f%.a}".*
使用 f
作为参考文件,这会更改目录中仅扩展名不同的所有其他文件的日期。
done
这表示 for
循环结束。
我有一堆文件夹,里面有很多组文件,文件名匹配,扩展名不同,例如
foo.a
foo.b
foo.c
bar.a
bar.b
bar.c
baz.a
baz.b
baz.c
.a 扩展名的文件日期正确,但我需要设置其他具有相同文件名的文件的修改日期以匹配。我可以列出所有扩展名为 .a 的文件,trim 这样
find -name '*.a'| sed 's/\(.*\)\..*//'
我知道它会涉及到 "touch --reference",但就我所知。帮忙?
尝试:
for f in *.a; do touch -r "$f" "${f%.a}".*; done
工作原理:
for f in *.a; do
这会遍历所有扩展名为
.a
的文件touch -r "$f" "${f%.a}".*
使用
f
作为参考文件,这会更改目录中仅扩展名不同的所有其他文件的日期。done
这表示
for
循环结束。