在使用grep在指定目录下查找包含指定字符串的文件是,我们想过滤(即不递归查询指定目录)时!可以使用 –exclude-dir 参数 单个目录实例 搜索.目录但不搜索在.目录下的.svg目录中包含"string"字符串的文件 grep -E "string" . -R --exclude-dir=.svg 多个目录实例 过滤.git,res,bin目录 grep -E "http" . -R --exclude-dir={.git,res,bin…
grep用法详解:grep与正则表达式 首先要记住的是: 正则表达式与通配符不一样,它们表示的含义并不相同!正则表达式只是一种表示法,只要工具支持这种表示法, 那么该工具就可以处理正则表达式的字符串.vim.grep.awk .sed 都支持正则表达式,也正是因为由于它们支持正则,才显得它们强大:1基础正则表达式grep 工具,以前介绍过.grep -[acinv]   '搜索内容串'   filename-a 以文本文件方式搜索-c 计算找到的符合行的次数-i 忽略大小写-n 顺便输出行号-v…
查找根目录下大于500M的文件,排除/proc目录 find / ! -path "/proc/*" -type f -size +500M | sort -rh|xargs ls -lh | awk '{ print $9 ": " $5 }' 如果排除俩个目录 find / ! -path "/proc/*" ! -path "/home/*" -type f -size +500M | sort -rh|xargs ls…
在linux中可以用tar打包目录以方便传输or备份,我们先来看一个例子 Linux下tar命令exclude选项排除指定文件或目录 test 文件夹有如下文件 [root@lee ~]# ll test 总用量 8 -rw-r--r--. 1 root root 0 4月 14 22:18 a.jpg -rw-r--r--. 1 root root 0 4月 14 22:25 a.log -rw-r--r--. 1 root root 0 4月 14 22:18 a.txt -rw-r--r-…
看grep的知识点的时候,在XXX博客里看到一个这样的例子,一直在纠结,纠结,init与[i]nit 匹配到的东西不应该时一样的嘛,为什么一个匹配得出来,一个不行.后来在群里问了某位大哥,耐心的讲解,原来是自己只顾后面的匹配了,忽略了前面的进程里自身进程不一样的区别 ps aux | grep init: ps aux |grep [i]nit: 第一个init的时候她会把grep init也弄到进程里,所有可以匹配到init 第二个[i]nit的时候会把grep [i]nit 弄到进程里,但是…
用ps -def | grep查找进程很方便,最后一行总是会grep自己. $ ps -def | grep dragonfly-framework dean 5273 5272 0 15:23 pts/5 00:00:00 newlisp ./dragonfly-framework/newlisp-redirection.lsp -http -d 8080 -w . dean 5491 5229 0 15:37 pts/16 00:00:00 grep --color=auto dragonf…
使用grep时,当一个目录下有一个包含很多文件的目录,但也不想搜索它,怎么办? 使用 --exclude-dir 选项. 单个目录示例: grep -rni 'http' --exclude-dir=.git ./ 多个目录示例: grep -rni 'http' --exclude-dir={.git,res,bin} ./ 多个文件示例: grep -rni 'http' --exclude=*.{java,js,css} #注意:这里是 --exclude,不是 --exclude-dir…
grep的排除选项为 -v排除空行的命令是:grep -v '^$' filename排除以#注释的命令是:grep -v '^#' filename 结合起来就是,既排除空行又排除注释行的命令grep -v "^#" nova.conf | grep -v "^$"…
我们经常用ps | grep xxx来查询是否存在某进程,但默认情况下会将grep这个命令也作为结果返回,这样无论是否存在查询的进程,该命令的返回值都是0. 要避免这种情况可以使用grep的-v参数,含义是Select non-matching lines(选择不匹配的行). 比如查询cron服务是否在运行 ps | grep cron | grep -v grep…
某些原因想在svn co的时候排除某些目录,可以绕个圈子,分三步来完成: co外层目录: svn checkout --depth empty $URL [$LOCATION] 完成之后,会有一个只包含空目录的根目录 设置忽略目录: cd $LOCATIONsvn up --set-depth exclude <$DIR_TO_EXCLUDE> 这样svn会提示被忽略的目录标记为D,然后文件系统上也看不见了 更新剩余文件 svn up --set-depth infinity * 这样其他目录…