find - 从目录与另一个目录运行 Find 命令
问题描述
我做错了什么,但无法弄清楚它是什么。我正在尝试将文件夹(文件夹 A)中的所有文件移动到另一个文件夹(文件夹 B),没有任何子目录并且不包括某些文件
当我在文件夹中时,我运行...
cd folderA
find . -path './*' -prune -not \( -name "file1.php" -o -name "file2.txt" \) -type f -exec mv -f {} ~/folderB/ \;
这很好用。但是我想在 bash 脚本中运行上面的 find 命令并且不想去文件夹,所以我尝试了......
find ~/folderA/ -path './*' -prune -not \( -name "file1.php" -o -name "file2.txt" \) -type f -exec mv -f {} ~/folderB/ \;
没事了!我究竟做错了什么。
提前致谢
解决方案
剥离上述命令后,我发现了问题。由于某种原因-path './*' -prune
,在直接文件夹之外不起作用。这是我用来让它在文件夹本身之外工作的命令......
find ~/folderA/ -maxdepth 1 -not \( -name "file1.php" -o -name "file2.txt" \) -type f -exec mv -f {} ~/folderB/ \;
同样,不确定方法-maxdepth 1
是否适用于另一种方法,但确实如此。
仅供参考...如果您想进一步进入子目录,您可以通过更改1
值
推荐阅读
- c# - sqlite 增量数据每 5 分钟备份一次
- angular - Angular 7 Cdk:使用 CdkPortal 没有实例
- amazon-web-services - 跨可用区的 EBS 容错
- sql - 如果我想从存储过程执行可执行文件,除了使用 xp_cmdshell 之外,还有其他方法吗?
- java - 有没有办法在不使用 list index 的情况下捕获 List 元素 xpath 。在 java 中使用 selenium
- c++ - 使用 std::array 初始化二维数组的元素。C++
- java - Discord bot 在 if/else 语句中通过两条路径?
- git - Github:没有什么可以比较的
- c# - 在 ASP.Net Core 中测试 REST 样式的控制器
- html - 如何在角度 6 中拖放元素?