我学到的Linux命令-cd,grep,less,tail,vi
2014-02-19 19:37
357 查看
对于Linux我懂得不多。也是在应用的过程中,慢慢学会一些。因为也是小白起步的,所以希望给各位亟待入门的兄弟姐妹一个参考吧。
linux命令不单单是用来操作服务器,更是前辈们的精华,好些命令都是经典啊。我琢磨在“把代码写好”这事情上,这些命令也是一个参考标准。
1.cd = change directory 切换目录
到某一个目录。必备技能。特别的是:
cd ~ 到当前用户的home目录,也就是登录进来时默认的目录
cd / 到根目录
cd - 到之前一个目录。类似电视遥控器的回看功能。挺好用的。
2.grep
一般用法1:grep 'keyword' application.log
用于在文本中搜索
这样可以搜索出application.log 这个文件中的所有含有keywor这个词的行。当你需要看搜索出的行的前后部分是需要用到以下参数
-An 是往前n行 如-A50就是往前50行
-Bn 是往后n行 如-B50就是往后50行
-Cn 是前后都各n行 如-C50就是往前后各50行
另外,--color 也是必备,用途是高亮关键字。可以缩写作--col.
适合于在文件中查找某个关键字,不适合跟踪业务流程执行情况,这种需求推荐用less或者vi
一般用法2:grep ‘keyword’ application.log -c
用于统计keyword在application.log 中出现的次数
一般用法3:grep 'keyword' application.log.2013-01-* -c
这种假设当前目录下有
application.log.2013-01-01
application.log.2013-01-02
application.log.2013-01-03
...
等这种格式的多个文件,将列出每个文件中关键词的出现次数。我经常用它查找某个流水号在具体哪天发生了操作。当然前提是日志必须是每天滚动的。
3.tail 查看文件尾的数据
一般用法:tail -f application.log
application.log 是需要查看的文件名
-f 表示跟随,就跟eclipse控制台输出的效果是相同的。
比较适用于看实时输出的内容。不适合查找静态的文本。
4.less
强大的文本查看工具。不会修改文本内容。
这里需要提到cat命令是全文查看,如同Windows下的notepad打开一个文件一样直白简单。但是过于直白了,对于生产环境里动则几百兆的日志,几乎无用。
vi也可以用,但是会将文本都加载到内存。据同事说,如果文件较大,vi跟less的查看文件的效率差距比较大。
一般用法:less application.log
打开后进入了操作页面。就像Windows下打开一个新的软件一样,进入word你就可以它相应的快捷键了。less下的操作跟vi一致。
最常用的如下:
G :也就是shift+g一起按,到文件尾
gg:到文件头
h:向上移动一行
j:向下移动一行
k:往左移动一格
l:往右移动一格(注意hjkl在键盘的位置)
/:按关键字往下搜索,比如要搜keword这个词,输入/keword按下enter键,就会从当前位置往下搜索,移动到第一个找到的行,此时如果按下n,就会到下一个出现的位置,如果按下shift+n,也就是N,就会往回找到上一次出现的位置
?:按关键字往上搜索,如果是搜索keyword,输入?keyword按下enter键,就会从当前位置往上搜索,定位到搜索到的第一个关键字所在的位置。n和N的作用一致,但是因为/和?方向相反,n和N的方向也会相反。总结就是,搜索出来后,n是按着当前方向查找下一处出现的位置,N就是当前方向的反方向的下一次出现位置。
&:只保留关键字所在的行。可以将不需要的部分过滤掉。
我一般查看日志的方式是:
预先拷贝好流水号或者关键字
1.)如果不知道在哪个日志,会用 grep ‘流水号’ application.log -c --col 找到所在的日志文件。再在对文件less。
2.)less application.log
3.)如果知道是在下午发生的就用G到文件尾,用‘?流水号’倒着搜索,找到最后一次出现的位置,用h或者j上下查看。如果不是,就用n往上接着找。
如果是在上午,就是gg到文件头,然后用‘/流水号’往下搜索。
4.)找到进程号,/进程号,看这个进程处理的过程,找到问题
5.vi
或者vim。适用于编辑文件。经典的文本编辑工具。体系庞大,不能够详讲。提一句是vi有模式。ESC键到normal模式,就是默认模式,i键到输入模式。
上面提的less的命令基本适用。
G :也就是shift+g一起按,到文件尾
gg:到文件头
h:向上移动一行
j:向下移动一行
k:往左移动一格
l:往右移动一格
i:insert模式,可以输入修改
d:删除
x:删除一个字母
y:拷贝
p:粘帖
推荐Windows下装个gvim用一用。建议使用gvim来学习vi的使用。学习曲线起初是比较陡的,但是确实入了门,还是挺有成就感的。
另外,推荐使用cygwin,可以在Windows下学习linux命令。
to be continued...
(find/sort/sed/awk)
linux命令不单单是用来操作服务器,更是前辈们的精华,好些命令都是经典啊。我琢磨在“把代码写好”这事情上,这些命令也是一个参考标准。
1.cd = change directory 切换目录
到某一个目录。必备技能。特别的是:
cd ~ 到当前用户的home目录,也就是登录进来时默认的目录
cd / 到根目录
cd - 到之前一个目录。类似电视遥控器的回看功能。挺好用的。
2.grep
一般用法1:grep 'keyword' application.log
用于在文本中搜索
这样可以搜索出application.log 这个文件中的所有含有keywor这个词的行。当你需要看搜索出的行的前后部分是需要用到以下参数
-An 是往前n行 如-A50就是往前50行
-Bn 是往后n行 如-B50就是往后50行
-Cn 是前后都各n行 如-C50就是往前后各50行
另外,--color 也是必备,用途是高亮关键字。可以缩写作--col.
适合于在文件中查找某个关键字,不适合跟踪业务流程执行情况,这种需求推荐用less或者vi
一般用法2:grep ‘keyword’ application.log -c
用于统计keyword在application.log 中出现的次数
一般用法3:grep 'keyword' application.log.2013-01-* -c
这种假设当前目录下有
application.log.2013-01-01
application.log.2013-01-02
application.log.2013-01-03
...
等这种格式的多个文件,将列出每个文件中关键词的出现次数。我经常用它查找某个流水号在具体哪天发生了操作。当然前提是日志必须是每天滚动的。
3.tail 查看文件尾的数据
一般用法:tail -f application.log
application.log 是需要查看的文件名
-f 表示跟随,就跟eclipse控制台输出的效果是相同的。
比较适用于看实时输出的内容。不适合查找静态的文本。
4.less
强大的文本查看工具。不会修改文本内容。
这里需要提到cat命令是全文查看,如同Windows下的notepad打开一个文件一样直白简单。但是过于直白了,对于生产环境里动则几百兆的日志,几乎无用。
vi也可以用,但是会将文本都加载到内存。据同事说,如果文件较大,vi跟less的查看文件的效率差距比较大。
一般用法:less application.log
打开后进入了操作页面。就像Windows下打开一个新的软件一样,进入word你就可以它相应的快捷键了。less下的操作跟vi一致。
最常用的如下:
G :也就是shift+g一起按,到文件尾
gg:到文件头
h:向上移动一行
j:向下移动一行
k:往左移动一格
l:往右移动一格(注意hjkl在键盘的位置)
/:按关键字往下搜索,比如要搜keword这个词,输入/keword按下enter键,就会从当前位置往下搜索,移动到第一个找到的行,此时如果按下n,就会到下一个出现的位置,如果按下shift+n,也就是N,就会往回找到上一次出现的位置
?:按关键字往上搜索,如果是搜索keyword,输入?keyword按下enter键,就会从当前位置往上搜索,定位到搜索到的第一个关键字所在的位置。n和N的作用一致,但是因为/和?方向相反,n和N的方向也会相反。总结就是,搜索出来后,n是按着当前方向查找下一处出现的位置,N就是当前方向的反方向的下一次出现位置。
&:只保留关键字所在的行。可以将不需要的部分过滤掉。
我一般查看日志的方式是:
预先拷贝好流水号或者关键字
1.)如果不知道在哪个日志,会用 grep ‘流水号’ application.log -c --col 找到所在的日志文件。再在对文件less。
2.)less application.log
3.)如果知道是在下午发生的就用G到文件尾,用‘?流水号’倒着搜索,找到最后一次出现的位置,用h或者j上下查看。如果不是,就用n往上接着找。
如果是在上午,就是gg到文件头,然后用‘/流水号’往下搜索。
4.)找到进程号,/进程号,看这个进程处理的过程,找到问题
5.vi
或者vim。适用于编辑文件。经典的文本编辑工具。体系庞大,不能够详讲。提一句是vi有模式。ESC键到normal模式,就是默认模式,i键到输入模式。
上面提的less的命令基本适用。
G :也就是shift+g一起按,到文件尾
gg:到文件头
h:向上移动一行
j:向下移动一行
k:往左移动一格
l:往右移动一格
i:insert模式,可以输入修改
d:删除
x:删除一个字母
y:拷贝
p:粘帖
推荐Windows下装个gvim用一用。建议使用gvim来学习vi的使用。学习曲线起初是比较陡的,但是确实入了门,还是挺有成就感的。
另外,推荐使用cygwin,可以在Windows下学习linux命令。
to be continued...
(find/sort/sed/awk)
相关文章推荐
- Linux中查看文本文件内容命令cat/tac/nl/more/less/head/tail/vi总结
- linux文件与目录的基本操作、linux命令(cp、tar、归档、ls、cd、tr、su、more、less、vi、cat等)
- Linux中查看文本文件内容命令cat/tac/nl/more/less/head/tail/vi总结
- Linux中查看文本文件内容命令cat/tac/nl/more/less/head/tail/vi总结
- linux 浏览查看文件more,less,head,tail,cat,tac,od,nl命令使用简介
- linux常用 字符 查找命令 grep find cat locate 文本编辑命令vi
- linux基础命令-文件查看类命令cat/tac/more/less/tail/head
- find和grep、cp 、mv、rm、cat、more、less、head、tail命令
- Linux下查看文件常用命令—cat,more,less,head,tail
- linux用于查看文件内容 tail、cat、more、less、head 、sed 命令
- Linux 常用命令1 pwd、ls、cd、tab、清屏、重定向、转义、管道、touch、mkdir、tree、cat、more、rmdir、rm、grep、help、man、history、find
- Linux下grep、tail、wc、awk文件处理命令
- linux命令,文件与目录(cp,pwd,mkdir,rmdir;ls,cp,rm,mv,basename,dirname;cat,tac,more,less,head,tail,touch,umask,chattr,file,which,locate,find)
- linux中cat、more、less、tail、head命令的区别
- linux命令之cd,ls,vi进入及退出文件
- Linux文本查看命令 cat ,more ,less ,head,tail
- Linux使用快捷键,who命令,rm命令,ps命令,cd,命令kill命令,find命令,grep命令,tar命令(gz、tar、bz2),用户管理,vim配置的一部分,相关命令
- linux笔记:文件处理命令touch,cat,more,less,head,tail
- cat tac rev head tail more less--linux中相反的命令
- linux中cat、more、less、tail、head命令的区别