linux - Linux 下 find 实用程序中的独占参数

标签 linux bash find

<分区>

我正在尝试使用 find 进行一些不同的尝试。我只是想将我根目录下的所有 .c 文件移动到我的源目录。虽然,我不知道如何排除一些我不想获取文件的目录。

我应该改进的代码行如下:

sudo find / -type f -name "*.c" -exec cp {} ~/my/source/directory \;

由于我的源目录中有不同的 .c 文件,将文件复制到文件被拾取的相同路径会引发错误(尽管它会起作用)。此外,即使我的源目录中没有文件,这也会发生,因为它们之前已复制到那里。

所以,我的行应该如下所示:

sudo find / -type f -name "*.c" EXCEPT ~/my/source/directory -exec cp {} ~/my/source/directory

有什么办法吗?我在手册页和我的引用手册中查找过(那里有类似的东西,即使我无法模仿),但我找不到任何有用的东西。

感谢任何帮助。

编辑:
查找手册页很清楚。如果有兴趣,你可以在第343行(343G on less)找到我的问题的解决方案。

最佳答案

如果我答对了你的问题,那么这可能会有所帮助:Exclude directory from find . command

检查@GetFree 在上面的链接中发布的答案。

关于linux - Linux 下 find 实用程序中的独占参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20841613/

相关文章:

java - 在 OutOfMemoryError Linux 上自动重启 jar

linux - 崩溃停止 bash 管道

c++ - 我可以 std::find stringstream 中的字符串吗?

linux - 删除随机创建的特定子目录中的文件

linux - FreeBSD Linux 库安装

c - 系统调用参数 read(buf) 指向不可寻址的字节

linux - 在 Bash 中填充变量时没有这样的文件或目录

arrays - 在数组 Excel VBA 中返回最小值的索引

linux - 通过云连接的 SSH,就像 RealVNC Connect 但用于 SSH

ruby-on-rails - 为 Rails 应用设置 logrotate