在linux下,有時候須要找一些文件,還有時候這些文件格式不夠統一和規範,可是須要排除的那些文件卻格式統一,就能夠使用find命令的反轉功能linux
通常用find查找文件的命令是:字符串
find . -name "*.tar.*" -o -name "*.patch"grep
這個意思是,查找文件名裏面包含.tar.字符OR.patch字符的文件。文件
如今要把這些文件排除,想grep/ack/ag都有一個叫-revert的功能,就是查找不是目標字符串的內容,find沒有,可是它提供了一個更強大的!非命令。字符
find . \( \! -name "*.tar.*" \)tar
這句話中()是表明(expr)使用表達式的意思,而後其中的!能夠把結果取反過來。
find . \( \! \( -name "*.tar.*" -o -name "*.patch" \) \)
這句也是一樣的意思,不過當用了-o命令的時候,須要再加一層括號。