在linux中grep命令是非常有用的,它和管道(|)配合使用,非常强大,用于搜索文本文件.如果想要在几个文本文件中查找一字符串,可以使用‘grep’命令。‘grep’在文本中搜索指定的字符串。
创新互联建站服务项目包括乐山网站建设、乐山网站制作、乐山网页制作以及乐山网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,乐山网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到乐山省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
假设您正在‘/usr/src/linux/Documentation’目录下搜索带字符串‘magic’的文件:
$ grep magic /usr/src/linux/Documentation/*
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key?
其中文件‘sysrp.txt’包含该字符串,讨论的是 SysRQ 的功能。
默认情况下,‘grep’只搜索当前目录。如果此目录下有许多子目录,‘grep’会以如下形式列出:
grep: sound: Is a directory
这可能会使‘grep’的输出难于阅读。这里有两种解决的办法:
明确要求搜索子目录:grep -r
或忽略子目录:grep -d skip
当然,如果预料到有许多输出,您可以通过 管道 将其转到‘less’上阅读:
$ grep magic /usr/src/linux/Documentation/* | less
这样,您就可以更方便地阅读。
有一点要注意,您必需提供一个文件过滤方式(搜索全部文件的话用 *)。如果您忘了,‘grep’会一直等着,直到该程序被中断。如果您遇到了这样的情况,按 ,然后再试。
下面是一些有意思的命令行参数:
grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。
这里还有些用于搜索的特殊符号:
\ 分别标注单词的开始与结尾。
例如:
grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,
grep '\grep '\' 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
'^':指匹配的字符串在行首,
'$':指匹配的字符串在行尾,
如果您不习惯命令行参数,可以试试图形界面的‘grep’,如 reXgrep 。这个软件提供 AND、OR、NOT 等语法,还有漂亮的按钮 :-) 。如果您只是需要更清楚的输出,不妨试试 fungrep 。
1.列出文件清单命令:ls
ls命令能够列出当前目录下的所有内容。ls 命令的执行方式为:
# ls [-选项] [文件名或者目录名]
进入到Linux命令行中后,我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得。
在Linux中,ls命令是最常使用的命令之一,因为在命令行下要随时查看目录内容。如果不加任何选项的话,ls命令仅列出当前目录下的文件和目录名,例如,想要查看/etc目录下的内容,可以使用下列命令:
# ls /etc
如果想要列出当前目录下所有文件,则可以使用下列命令:
# ls -a
2、cat命令
功能:在标准输出上显示文件。
语法:cat [-vTEuAte] 文件
例子: cat example.txt
cat -A exam2.txt
cat file1 file2 file2
3、more命令
功能:在终端屏幕按屏显示文本文件。
语法: more [-pcdls] 文件
例子: more example.c
more -dc example.c
more -c -10 example.c
4、less命令
less命令的功能几乎和more命令一样,也是用来按页显示文件,不同之处在于less命令在显示文件时允许用户既
可以向前又可以向后翻阅文件。
5、head命令
功能:显示指定文件的前若干行。缺省设置为显示10行
语法:head [-n] 文件
例子: head example.c
head -3 example.c
6、tail命令
功能:显示指定文件的末尾若干行。缺省设置为显示10行
语法:tail [+ / - num ] [参数] 文件
+num 从第num行以后开始显示。- num 从距文件尾num行处开始显示。
例子: tail example.c
tail -4 example.c
7、grep、fgrep和egrep命令
功能:
这组命令以指定模式搜索文件,并通知用户在什么文件中搜索到与指定的模式匹配的字符串,并打印出所有包含该字符串的文本行,在该文本行的最前面是该行所在的文件名。grep命令一次只能搜索一个指定的模式;egrep命令检索扩展的正则表达式(包括表达式组和可选项);fgrep命令检索固定字符串,它不识别正则表达式,是快速搜索命令。
语法:
grep [-EFbcihlnvxef] [查找模式] [文件名1,文件名2,……]
egrep [选项] [查找模式] [文件名1,文件名2,……]
fgrep [选项] [查找模式] [文件名1,文件名2,……]
例子: grep "text file" example
grep data *
grep goto *.c
1、文件与文件夹(目录)操作命令
1)rm:删除命令
例:$ rm -i 文件名-------------有询问“Y/N”; rm -r 文件名 ---------------删除该文件夹和子目录下的所有文件;
例:$ rm -f 文件名------------- 直接删除,不询问
2) mv:移动目录或文件,还可以重命名
例:$ mv text /zzz -------------将text移动到zzz目录下;
例:$ mv text zzz ---------------text重命名为zzz
3) mkdir:创建路径和删除路径,创建目录
例:$ mkdir zzz -------------在当前目录下创建zzz的目录;
例:$ rmdir zzz ---------------删除目录zzz
4) touch :创建空文件
例:$ touch zzz.xx ----------------创建文件名是zzz.xx的文件
5)cat :查看文件内容
例:$ cat zzz.xx -----------------查看文件zzz.xx中的内容
6)tail :监视文件尾部内容,默认10行
例:$ tail -n 20 -f zzz.xx -----------查看文件zzz.xx的尾部20行内容
7)cp :复制
例:$ cp a.xx b -------将a.xx文件复制到b目录(文件夹)下
8)scp :拷贝文件
例:$ scp -i zzz.xx root@192.168.1.35:/xxx/xxxx/ -----------------从一台虚拟机上将文件zzz.xx拷贝到另外一台35的虚拟机的指定目录下;
例:$ scp -r zzz root@192.168.1.35:/xxx/xxxx/ -----------------从一台虚拟机上将文件夹(目录)zzz拷贝到另外一台35的虚拟机的指定目录下
9)chmod :给文件赋权限
例:$ chmod 777 zzz.xx 给zzz.xx文件增加可执行的权限2、查看端口号的命令 : netstat -antpl
3、查看正在执行的进程的命令 : ps -ef
4、强制杀死xxxx该进程的命令 :kill - 9 xxxx
5、配置Java环境变量的命令:
先执行---- vi /etc/profile 配置结束执行------- socrce /etc/profice 然后执行-------cat /etc/profile进行查看,用java -version查看Java版本
6、df -h ----------------是查看磁盘容量的使用情况
必要参数:
-a 全部文件系统列表
-h 方便阅读方式显示
-H 等于“-h”,但是计算式,1K=1000,而不是1K=1024
-i 显示inode信息
-k 区块为1024字节
-l 只显示本地文件系统
-m 区块为1048576字节
--no-sync 忽略 sync 命令
-P 输出格式为POSIX
--sync 在取得磁盘信息前,先执行sync命令
-T 文件系统类型
选择参数:
--block-size=区块大小 指定区块大小
-t文件系统类型 只显示选定文件系统的磁盘信息
-x文件系统类型 不显示选定文件系统的磁盘信息
--help 显示帮助信息
--version 显示版本信息
“df -h”这条命令再熟悉不过。以更易读的方式显示目前磁盘空间和使用情况。
“df -i” 以inode模式来显示磁盘使用情况。
7、网络命令
1)ifconfig :查看用户网络配置。它显示当前网络设备配置。补充:Windows 用的是 ipconfig
2)ping 将数据包发向用户指定地址。当包被接收,目标机器发送返回数据包。ping 主要有两个作用:
用来确认网络连接是畅通的。
用来查看连接的速度信息。