本文目录
- Linux中的find和grep命令对查找到的文件如何处理啊
- linux grep查找文件内容
- grep命令查找怎样排除具体路径下某个文件
- linux中怎么查看压缩包中的内容
- linux 查看压缩包里文件用什么命令
- linux查找文件内容命令
- CentOS中grep命令的问题
- linux下如何在不解压tar.gz包的情况下,grep 包里文件的一些内容
Linux中的find和grep命令对查找到的文件如何处理啊
Linux中find命令查找到文件后通过-exec参数执行shell命令,案例如下:#-exec command {} \; 将查到的文件执行command操作,{} 和 \;之间有空格find / -name filename -exec rm -rf {} \;#查找名字为filename的文件,然后执行rm删除命令Linux中grep命令查找到文件后通过|(管道符)传递给后面命令执行,案例如下:ls -l|grep filename|rm -rf#查找名字为filename的文件,然后执行rm删除命令
linux grep查找文件内容
Linux查找文件内容的常用命令方法。 1、从文件内容查找匹配指定字符串的行:$ grep “被查找的字符串“ 文件名例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件grep “thermcontact“ */*.in2、从文件内容查找与正则表达式匹配的行:$ grep –e “正则表达式” 文件名3、查找时不区分大小写:$ grep –i “被查找的字符串“ 文件名4、查找匹配的行数:$ grep -c “被查找的字符串“ 文件名5、从文件内容查找不匹配指定字符串的行:$ grep –v “被查找的字符串“ 文件名6、从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行find / -type f -name “*.log“ | xargs grep “ERROR“例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行find . -name “*.in“ | xargs grep “thermcontact“
grep命令查找怎样排除具体路径下某个文件
find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。若跟据文件的内容进行查找,需使用grep命令。 说明: 1、find命令的一般形式为find find命令部分选项说明:...
linux中怎么查看压缩包中的内容
linux下查看tar压缩包里面的内容,方法如下:
1、使用grep命令:
tar tvf Package_name.tar | grep Key_work#例如:# tar tvf bb.tar |grep log-rw-r--r-- root/root 37640 2011-10-13 19:09:59 install.log-rw-r--r-- root/root 4404 2011-10-13 19:08:45 install.log.syslog2、直接指定文件名或通配符
tar tvf Package_name.tar # tar tvf bb.tar *log*-rw-r--r-- root/root 37640 2011-10-13 19:09:59 install.log-rw-r--r-- root/root 4404 2011-10-13 19:08:45 install.log.sysloglinux 查看压缩包里文件用什么命令
linux下查看tar压缩包里面的内容,方法如下: 1、使用grep命令: tar tvf Package_name.tar | grep Key_work #例如: # tar tvf bb.tar *log* -rw-r--r-- root/root 37640 2011-10-13 19:09:59 install.log -rw-r--r-- root/root 4404 2011-10-13 19:08:45 install.log.syslog
linux查找文件内容命令
搜索、查找文件当中的内容,一般最常用的是grep命令,另外还有egrep, vi命令也能搜索文件里面内容
1:搜索某个文件里面是否包含字符串,使用grep “search content“ filename1, 例如
$ grep ORA alert_gsp.log
$ grep “ORA“ alert_gsp.log
例如我们需要搜索、查找utlspadv.sql文件中包含ORA的字符内容
$
如上所示,这个是一个模糊匹配,其实我是想要查看ORA这类错误,那么我要过滤掉哪一些没有用的,搜索的内容修改一下即可(当然也可以使用特殊参数,后面有讲述),如下所示。
$
2: 如果你想搜索多个文件是否包含某个字符串,可以使用下面方式
grep “search content“ filename1 filename2.... filenamen
grep “search content“ *.sql
例如我想查看当前目录下,哪些sql脚本包含视图v$temp_space_header(注意:搜索的内容如果包含特殊字符时,必须进行转义处理,如下所示)
$
3:如果需要显示搜索文本在文件中的行数,可以使用参数-n
$
4: 如果搜索时需要忽略大小写问题,可以使用参数-i
$
另外,例如检查安装的MySQL组件
# rpm -qa | grep -i mysqlMySQL-devel-5.6.23-1.linux_glibc2.5MySQL-client-5.6.23-1.linux_glibc2.5MySQL-server-5.6.23-1.linux_glibc2.5
5:从文件内容查找不匹配指定字符串的行:
$ grep –v “被查找的字符串“ 文件名
例如查找某些进程时,我们不想显示包含命令grep ora_mmon的进程,如下所示
$
6:搜索、查找匹配的行数:
$ grep -c “被查找的字符串“ 文件名
$
7:有些场景,我们并不知道文件类型、或那些文件包含有我们需要搜索的字符串,那么可以递归搜索某个目录以及子目录下的所有文件
$ grep -r “v\$temp_space_header“ /u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql:create or replace view v_$temp_space_header as select * from v$temp_space_header;
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql:create or replace public synonym v$temp_space_header for v_$temp_space_header;
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql:create or replace view gv_$temp_space_header as select * from gv$temp_space_header;
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql:create or replace public synonym gv$temp_space_header
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql: FROM gv$temp_space_header
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspacd.sql:drop public synonym v$temp_space_header;
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspacd.sql:drop public synonym gv$temp_space_header;
$
8:如果我们只想获取那些文件包含搜索的内容,那么可以使用下命令
$ grep -H -r “v\$temp_space_header“ /u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspacd.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspacd.sql
$ grep -H -r “v\$temp_space_header“ /u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1 | uniq
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspace.sql
/u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/catspacd.sql
$
9:如果只想获取和整个搜索字符匹配的内容,那么可以使用参数w
你可以对比一下两者的区别
$
10: grep命令结合find命令搜索
$
11: egrep -w -R ’word1|word2’ ~/klbtmp
12: vi命令其实也能搜索文件里面的内容,只不过没有grep命令功能那么方便、强大。
CentOS中grep命令的问题
常规情况下grep命令是在/usr/bin目录下,你可以使用which grep 或者where’s grep 查找到这个执行命令的所在地。你这个是丢失了grep命令,你可以先把已经有的frep卸载了,然后重新装一次应该就可以了,yum remove grep -y。如果安装没有问题,你就可以正常使用了。
linux下如何在不解压tar.gz包的情况下,grep 包里文件的一些内容
~ ⮀ file tmp.tar.gztmp.tar.gz: gzip compressed data, last modified: Tue Mar 3 12:59:13 2015, from Unix ~ ⮀ tar -tf tmp.tar.gz | grep main.ctmp/main.c ~ ⮀