最新在看《Linux And Unix shell Programing 》,避免看完之后忘记,以后每看一部分都记录下。今天主要记录下linux下
最常用的两个命令grep和find。
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
查找文件中包含某个关键词的行;
grep keyword -r * # 在当前目录及其子目录下查找包含keyword的行 grep --exclude="*\.svn*" keyword -r * #功能同上,但是不查找.svn文件 #正则表达式 grep ‘48[34]’ your_file #查找包含483或者484的行 grep '4\{3,8\}' your_file #查找包含3个到8个4的行 grep -E '216|329' your_file #包含216或者329的行 #和其它程序配合使用 ps aux | grep apache2 | grep -v grep #查找apache2相关进程
find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
在目录中查找文件
find . -name "*.txt" -print #在当前目录及其子目录中查找以.txt文件为后缀的文件 find . -type d -print #查到当前目录中的目录文件 find . -mtime +5 -name "*.log" -exec rm {} \; #删除5天前得日志 find . -mtime +5 -name "*.log" -ok rm {} \; #功能同上,但是删除前会确认