在使用linux(xshell)時,經常需要進行文件查找,其中查找命令主要有find和grep。 區別: (1)、find命令是根據文件的屬性進行查找文件。文件屬性如文件名,文件大小,所有者,所屬組,是否為空,訪問時間,修改時間等。 (2)、grep命令是根據文件的內容進行查找。會對文件的每一行按照給定的模式進行匹配查找。 find命令 基本格式:find path exPRession 1、按照文件名查找 ? find / -name PowerManagerService.java 表示在根目錄下查找PowerManagerService.java文件,也就是在整個硬盤查找。查找結果如下:
? find frameworks/ -name PowerManagerService.java 表示在frameworks目錄下查找PowerManagerService.java文件。
? find frameworks/ -name ‘PowerManager*’ 表示使用通配符*(0個或任意多個),在frameworks目錄下查找文件名開頭是字符串‘PowerManager’的文件。
? find . -name ‘PowerManager*’ 表示在當前目錄下(包含子目錄)查找文件名開頭是字符串‘PowerManager’的文件。
2、按照文件特征查找 這里使用比較少,只舉一個例子。 find frameworks/ -amin -10 表示在frameworks目錄下查找最后10分鐘訪問的文件。 grep命令 基本格式:grep expression 1、 主要參數 -i:不區分大小寫; -n:顯示匹配行及行號; -r:包含子目錄; -c:只輸出匹配行的計數; -w:匹配整個單詞; 2、 實例 ? grep ‘test’ abc* 顯示所有以abc開頭的文件中包含test的行。
? grep test frameworks/ 顯示frameworks目錄下(不包含子目錄)的文件包含test的行。 ? grep –r test frameworks/ 顯示frameworks目錄下(包含子目錄)的文件包含test的行。
? grep –w test 文件名/目錄 只匹配整個單詞,而不是字符串的一部分。
新聞熱點
疑難解答