您好我的第一个"帖子"所以我请原谅:)
基本上我需要找到放在指定路径下的几个文件夹之一的文件,例如它可能是" / Folders"。目录始终直接放在ROOT上,内容名称各不相同。这就是为什么我不能设置路径来指定哪个文件夹包含想要的文件。
我知道它应该如何运作但我是脚本标题的初学者。下面我想介绍我的"计划"的剧本。
通过带有grep选项的/ Folders路径下的名称查找文件,以关闭尽可能多的搜索结果,例如文件的名称可以是" WantedOne"。
复制到剪贴板搜索结果可能最好的方法是PBCOPY但不确定。
将目录更改为放置在剪贴板中的路径,在路径末尾没有文件名,例如" / Folders / XYZ /"文件" WantedOne"放在里面。
Echo" Found; - )"
答案 0 :(得分:1)
这是您要使用的find
命令。以下是一些可以帮助您入门的示例:
# find file with exact name, somewhere under a folder and its sub-folders
find /path/to/folder -name wanted.txt
# same thing, but multiple folders to search, there can be even more
find /path/to/folder1 /path/to/folder2 -name wanted.txt
# find file with name starting with "wanted"
find /path/to/folder -name 'wanted.*'
# find file with "ted" anywhere in the name
find /path/to/folder -name '*ted*'
手册页解释了更多有趣的选项。例如,您可以控制搜索的深度。在Web上查找一些教程以获取更多示例。
如果不是打印找到的路径,而只想回显“找到一个”:
find /path/to/folder -name '*wanted*' -printf "Found one\n" | head -n 1
如果这在osx中不起作用(我现在无法测试),那么请改用:
find /path/to/folder -name '*wanted*' -exec echo "Found one" \; | head -n 1