1)find过滤目录使用find命令在linux系统中查找文件时,有时需要忽略某些目录,可以使用"-path 过滤的目录路径 -prune -o"参数来进行过滤。不过必须注意:要忽略的路径参数要紧跟着搜索的路径之后,否则该参数无法起作用。 1 2 3 4 5 6 7 8 9 10
3)过滤操作"-path /opt/kevin/test2/ -prune -o"必须紧跟在要搜索路径的后面才能实现过滤效果,否则也不能实现过滤效果。 如果要过滤两个目录,比如过滤掉test2和test3目录,则使用转义符\( -path ./test2 -o -path ./test3 -prune -o \) 注意:两个转义符前面都要有空格!! [root@localhost kevin]# fin...
find . -path ./venv -prune -o -path ./build -prune -o -name "*.py" -print 查找当前目录下的*.py, 排除掉./venv和./build目录.-path ./venv -prune是跳过某个目录。-o代表 或 的关系。 第二种: 语法: find <path> \( [-path <path> -o] [...] \) -prune -o -print 和第一种...
find /home/user \( -path"/home/user/Downloads"-prune \) -o \( -name"doc_*.txt"-print\) 在这个命令中,括号用于分组-path和-prune,以及-name和-print的条件。这使得find只会排除Downloads目录,同时查找其他目录中符合名称条件的文件。 使用-a和-o操作符 -a和-o操作符分别表示逻辑与 (AND) 和逻...
如果要将某个目录从搜索中排除,可以结合 -path, -prune 和 -o 一起使用: 注意路径中的星号 *, -prune 选项在路径之后,-o 选项在 prune 之后。 基本上,prune命令要求不使用路径指定的值,它总是与 -o 一起使用,以确保 -o 的右侧只针对未被排除的目录。
find [路径] -path [路径模式] -prune [路径]是要查找的目录,[路径模式]是要排除的目录路径,要在/home目录下查找名为test.txt的文件,但是要排除/home/dir1和/home/dir2这两个目录,可以使用以下命令: find /home ( -name test.txt -o -path /home/dir1 -o -path /home/dir2 ) -prune -o -print...
find . -path "./directory_exclude/*" -prune -o -name SEARCH_NAME -prune始终与-o一起使用,以确保右侧的检索词只对没有被prune(修剪)的目录进行搜索 进一步处理搜索结果 使用exec 列出搜索结果文件的详细信息(ls -l) find . -type f -name "*.txt" -exec ls -l {} + ...
find -name "*.txt" -print -o -path "./aaa" -prune -print (1) 其实也可以略写为 find -name "*.txt" -o -path "./aaa" -prune 注意第二个语句-o两侧都没有-print,输出结果为: ./01.txt ./02.txt ./03.txt ./aaa 这是因为find开始执行,遇到第一个-print命令,则会考虑输出,但是输出...
find . -path "./directory_exclude/*" -prune -o -name SEARCH_NAME 注意路径中的星号 *, -prune 选项在路径之后,-o 选项在 prune 之后。 基本上,prune命令要求不使用路径指定的值,它总是与 -o 一起使用,以确保 -o 的右侧只针对未被排除的目录。
5. -prune:这个结尾符用于排除某些目录不被搜索。例如,要搜索一个目录下的所有文件,但排除某个子目录,可以使用以下命令:find /path/to/search -path /path/to/exclude -prune -o -print。 总的来说,find命令的结尾符可以帮助我们更精确地指定搜索范围,执行特定的操作或排除某些目录。根据实际需求,我们可以选择...