在名称中查找名为“.logic”的文件,但排除“项目文件备份”子目录中的文件
问题描述:
我需要标识名称中包含“.logic”的所有文件,但不包含名为“Project”的子目录文件文件备份“。你可以看到我的一个项目的例子,它有一系列备份文件(file_name.xx.logic)。我只想看到项目文件本身,这里叫做KillBill.logic。在名称中查找名为“.logic”的文件,但排除“项目文件备份”子目录中的文件
这里是参考项目结构
音频文件
KillBill.logic
项目文件备份
KillBill.00.logic
杀死比尔。 01.logic
KillBill.02.logic
KillBill.03.logic
KillBill.04.logic
采样仪器
样品
我有CD” d到正确的目录,然后运行以下命令以显示ALL电子文件的名称中包含“.logic”:
find . -name "*.logic"
我试图根据所述要求削减结果,但没有成功。我尝试到目前为止已经
find . -name "*.logic" -not -path "*Backups*"
-
find . -name "*.logic"| awk '!*Backups*'
(有一个与awk的语句有问题) -
find . -name "*.logic" ! -name "*Backups*"
(我怀疑这不起作用,因为文件本身的名称不包括“备份”,在它
我可以find . -name "*.logic" ! -name "*.*.logic"
只排除这似乎有版本信息在其名称中的任何。逻辑文件,但我不能保证有效的文件没有在名称中的一段,HENC我希望排除项目文件备份目录。
发现了什么调用我应该使用列出项目文件,并排除其存在于每个项目的“项目文件备份的备份文件吗?我宁愿使用找到而不是其他命令的组合。
答
将“Project File Backups”中的.logic所有文件重命名为。logicpfb,做
答
重命名时,他们都回来,我不能找到一种方法只使用发现这样做,但下面的行之有效
find . -name "*.logic" | grep -v "Project File Backup" -c
谢谢,我已经找到了解决方案现在,张贴一个答案 – DWD