“第005课 linux进阶命令”的版本间的差异

来自百问网嵌入式Linux wiki
第42行: 第42行:
 
   find /home -mtime -2  查找/home目录下两天内有变动的文件
 
   find /home -mtime -2  查找/home目录下两天内有变动的文件
  
 +
=002节_Linux进阶命令__grep命令 =
 +
 +
grep 命令:
 +
> 目的:使用grep命令来查找文件中符合条件的字符串
 +
> 格式:grep  [选项] [查找模式]  [文件名]
 +
 +
 +
假设dira目录的test1.txt和dirb目录的test1.txt都含有如下内容:
 +
aaa
 +
AAAAAA
 +
abc
 +
abcabcabc
 +
cbacbacba
 +
match_pattern
 +
nand->erase
 +
 +
通过查找字符串,希望显示如下内容:
 +
#所在的文件名----grep查找时默认已经显示目标文件名
 +
#所在的行号------使用-n选项
 +
 +
grep -rn "字符串"  文件名
 +
r(recursive):递归查找
 +
n(number):显示目标位置的行号
 +
字符串:要查找的字符串
 +
文件名:要查找的目标文件,如果是*则表示查找当前目录下的所有文件和目录
 +
 +
举例:
 +
grep -n "abc" test1.txt    在test1.txt中查找字符串abc
 +
grep -rn "abc" *          在当前目录递归查找字符串abc
 +
 +
注意:
 +
1)可以加入-w全字匹配。
 +
 
<categorytree mode=all background-color:white;">ARM裸机加强版</categorytree>
 
<categorytree mode=all background-color:white;">ARM裸机加强版</categorytree>
 
[[Category:ARM裸机加强版 ]]
 
[[Category:ARM裸机加强版 ]]

2018年1月16日 (二) 16:24的版本

001节_Linux进阶命令__find命令

我们在Windows中搜索文件,一般查找文件需要传入两个条件: 1)在那些目录中查找; 2)查找的内容;

在Linux中,查找文件的也需要这两个条件,不同于Windows使用搜索框查找,Linux中使用 find 命令查找文件。

find 命令:
  • 目的:查找符合条件的文件
  • 格式: find 目录名 选项 查找条件

举例1:

find /work/001_linux_basic/dira/  -name "test1.txt"

说明:

   a)/work/001_linux_basic/dira/`指明了查找的路径
   b)`-name 表明以名字来查找文件
   c)`"test1.txt"`,就指明查找名为test1.txt的文件

举例2:

find /work/001_linux_basic/dira/  -name "*.txt"	

说明: a)查找指定目录下面所以以.txt结尾的文件,其中*是通配符。

举例3:

find /work/001_linux_basic  -name "dira"

说明: a)查找指定目录下面是否存在dira这个目录,dira是目录名。

注意: 1)如果没有指定查找目录,则为当前目录。

    find . -name "*.txt"`   其中`.`代表当前路径 

find -name "*.txt"` 没加路径,默认是当前路径下查找

2)find还有一些高级的用法,如查找最近几天(几个小时)之内(之前)有变动的文件

 find /home -mtime -2   查找/home目录下两天内有变动的文件	

002节_Linux进阶命令__grep命令

grep 命令:

> 目的:使用grep命令来查找文件中符合条件的字符串 > 格式:grep [选项] [查找模式] [文件名]


假设dira目录的test1.txt和dirb目录的test1.txt都含有如下内容:

aaa
AAAAAA
abc
abcabcabc
cbacbacba 
match_pattern
nand->erase

通过查找字符串,希望显示如下内容:

  1. 所在的文件名----grep查找时默认已经显示目标文件名
  2. 所在的行号------使用-n选项

grep -rn "字符串" 文件名 r(recursive):递归查找 n(number):显示目标位置的行号 字符串:要查找的字符串 文件名:要查找的目标文件,如果是*则表示查找当前目录下的所有文件和目录

举例:

grep -n "abc" test1.txt    在test1.txt中查找字符串abc
grep -rn "abc" *           在当前目录递归查找字符串abc

注意: 1)可以加入-w全字匹配。