我需要从目录及其所有子目录复制所有*.jar个文件.如何在UNIX/Linux终端上实现这一点?cp -r *.jar /destination_dir号命令不起作用.

推荐答案

rsync对于本地文件复制以及机器之间的复制非常有用.这将满足您的需求:

rsync -avm --include='*.jar' -f 'hide,! */' . /destination_dir

来自的整个目录 struct .已复制到/destination_dir,但仅复制到.jar文件被复制.-a确保文件上的所有权限和时间不变.-m将省略空目录-v代表详细输出.

对于试运行添加a-n,它会告诉你它会做什么,但实际上不会复制任何东西.

Linux相关问答推荐

awk:try 将时间戳字符串转换为unix纪元时间

没有发现运行时依赖关系,但它在S的运行时路径中有吗?

在Groff mm中定义页眉不会更改第一页中的页眉

匹配模式和提取

X86 程序集 - struct 点 - 存储/返回不正确?

如何使用 ftrace 过滤查看函数上方的调用堆栈?

有必要注意非错误提示吗?好像没有找到包裹‘***’?

Linux 如何使用 PCID 的值?

使用 sed 或 awk 在 linux 中将第一行中的一个单词替换为第二行中的另一个单词

Azure Nvidia 中的 apt-update 给出公钥错误

在三星 chromebook 上编程

ld-linux.so.2 和 linux-gate.so.1 是什么?

如何使用 GDB 和 QEMU 调试 Linux 内核?

argv的编码是什么?

在 Linux/POSIX 系统上获取用户全名的最简单方法是什么?

Monit 守护程序 - 连接到 monit 守护程序时出错

如何运行时调试共享库?

是否有git sed或类似功能?

.NET Core 中的跨平台文件名处理

如何获取 GNU Makefile 中使用的 shell 命令的退出状态?