linux命令之三 find和grep查找命令 file识别命令 which和whereis查找位置命令

1 find命令
作用:查找符合条件的文件

1)在那些目录中查找
2)查找的内容

格式:  find    目录名    选项    查找条件

举例:
1)find /work/001_linux_basic/dira/  -name "test1.txt"
说明:
    a)/work/001_linux_basic/dira/指明了查找的路径
    b)-name表明以名字来查找文件
    c)"test1.txt",就指明查找名为test1.txt的文件
同理:
    find /work/001_linux_basic/dira/  -name "*.txt"    
    查找指定目录下面所以以.txt结尾的文件,其中*是通配符。
    find /work/001_linux_basic  -name "dira"    
    查找指定目录下面是否存在dira这个目录,dira是目录名。

注意:
1)如果没有指定查找目录,则为当前目录。
    find . -name "*.txt"   其中.代表当前路径 
    find  -name "*.txt"
    都是一样的功能
    

book@www.100ask.org:~/test_patch$ find . -name main.c
./air_controller_software_DMA/Projects/main.c
./air/Projects/main.c
book@www.100ask.org:~/test_patch$ find . -name "main.c"
./air_controller_software_DMA/Projects/main.c
./air/Projects/main.c

book@www.100ask.org:~/test_patch$ find  . -name "main".c
./air_controller_software_DMA/Projects/main.c
./air/Projects/main.c

具体文件名加了双引号或者不加 效果都一样


2)find还有一些高级的用法,如查找最近几天(几个小时)之内(之前)有变动的文件
 find /home -mtime -2  查找/home目录下两天内有变动的文件    

    
2 grep命令

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


将dira目录的test1.txt和dirb目录的test1.txt都含有如下内容:
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全字匹配。   

3 file命令
作用:识别文件类型
格式: file   文件名

linux下一切皆文件

举例:
file ~/.bashrc     为ASCII 编码的text类型
file ~/.vimrc      为UTF-8 Unicode 编码的text类型
file ~/Pictures/*  如图形文件JPEG/PNG/BMP格式
file ~/100ask/     为directory表明这是一个目录
file /bin/pwd      出现 ELF 64-bit LSB executable,即为ELF格式的可执行文件
file /dev/*        出现character special(字符设备文件)、 block special(块设备文件)等

总结

常用的命令总结

grep -wrn "main" *  找出当前目录和子目录下包含固定的main字符串的文件

grep -rn "main" *  找出当前目录和子目录下包含有的main字符串的文件

 grep -n "abc" test1.txt   在test1.txt中查找字符串abc

find . -name "main.c"  在当前目录和子目录中查找main.c文件

 


4 which和whereis
作用:查找命令或应用程序的所在位置
格式:which  命令名/应用程序名

在终端上执行pwd实际上是去执行了/bin/pwd
举例:
    which pwd 定位到/bin/pwd
    which gcc 定位到/usr/bin/gcc
    whereis  pwd查找到可执行程序的位置/bin/pwd和手册页的位置/usr/share/man/man1/pwd.1.gz
    
 

大部分信息来源于韦东山视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值