我想在另一个位置创建同名的空文件。
是否可以?
- 找到一些文件
- 仅使用文件名
- 在另一个地方触摸一个空文件
像这样的东西:
find . -type f -name '*.jpg' -exec basename {}.tmp | touch ../emptys/{} \;
答案1
您可以使用--attributes-only
的 开关cp
来实现此目的,例如。
find . -iname "*.txt" -exec cp --attributes-only -t dummy/ {} +
从man
页面cp
:
--attributes-only
don't copy the file data, just the attributes
这将创建空文件,保留原始文件的所有属性,但不包含任何内容。
答案2
无需重新创建子目录:
find . -type f -name '*.jpg' -printf /path/to/emptys/%f\\0 | xargs -0 touch