linux特定行
㈠ 濡备綍鍦↙inux涓浣跨敤sed锻戒护鍦ㄦ枃浠剁壒瀹氲屽悗娣诲姞鍐呭癸纻
linux涓镄剆ed锻戒护鏄涓绉嶅己澶х殑鏂囨湰澶勭悊宸ュ叿锛岄氲繃鑴氭湰镎崭綔瀹炵幇瀵规枃链鏂囦欢镄勭紪杈戝拰杞鎹銆傚叾涓昏佸姛鑳藉寘𨰾镊锷ㄥ寲鏂囦欢缂栬緫銆佺亩鍖栭吨澶嶆搷浣滃拰缂栧啓杞鎹㈢▼搴忋傚熀链璇娉曟牸寮忎负锛歴ed [鍙傛暟]锛屽叾涓涓浜涘父鐢ㄧ殑鍙傛暟鍖呮嫭锛
- -e鎴--expression=script锛氱洿鎺ュ湪锻戒护涓鎸囧畾鑴氭湰澶勭悊鏂囨湰鏂囦欢銆
- -fscript鏂囦欢鎴--file=script鏂囦欢锛氢娇鐢ㄥ栭儴鑴氭湰鏂囦欢杩涜屽勭悊銆
- -h鎴--help锛氭樉绀哄府锷╀俊鎭浠ヤ简瑙e懡浠ょ敤娉曘
- -n鎴--quiet鎴--silent锛氢粎鏄剧ず澶勭悊钖庣殑缁撴灉锛屼笉鏄剧ず榛樿ょ殑琛屽彿銆
- -V鎴--version锛氭煡鐪媠ed镄勭増链淇℃伅銆
涓嬮溃鏄涓浜涘疄闄呮搷浣灭殑渚嫔瓙锛
- 鍦╢ile鏂囦欢镄勭锲涜屽悗鎻掑叆涓琛岋细钬淗ELLO LINUX! Linux is a free unix-type operating system. This is a Linux test file!钬濓细sed -e Ɗa ewlineHELLO LINUX! Linux is a free unix-type operating system. This is a Linux test file!' file
- 鍒楀嚭/dir鐩褰曞唴瀹癸纴鍒犻櫎绗2~5琛岋纴钖屾椂鏄剧ず琛屽彿锛歯l/dir | sed ƈ,5d'
- 鍦ㄧ浜岃屽悗闱㈡坊锷犱袱琛屾枃瀛楋细钬淒rink tea or 钬..钬濆拰钬渄rink beer钬濓细nl/dir | sed ƈaDrink tea or ......drink beer?'
- 灏嗙2-5琛屾浛鎹涓衡淣O 2-5 number钬濓细nl/dir | sed ƈ,5cNO2-5number'
- 鎸夎屼负鍗曚綅鏄剧ず绗5鍒7琛岋细nl/dir | sed -n Ƌ,7p'
阃氲繃杩欎簺瀹炰緥锛宻ed锻戒护镄勫己澶у姛鑳藉拰𨱔垫椿镐у湪鏂囨湰鏂囦欢镄勫勭悊涓鏄惧缑灏や负鏄捐宪锛岃兘澶熸弧瓒冲悇绉嶅嶆潅镄勬枃链镎崭綔闇姹伞
㈡ linux怎么查看指定行的日志
按行号查看---过滤出关键字附近的日志
因为通常时候我们用grep拿到的日志很少,我们需要查看附近的日志.
我是这样做的,首先: cat -n test.log |grep "地形" 得到关键日志的行号
<3>得到"地形"关键字所在的行号是102行. 此时如果我想查看这个关键字前10行和后10行的日志:
cat -n test.log |tail -n +92|head -n 20
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录按日期怎么查:
通常我们非常需要查找指定时间端的日志
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效.
关于日期打印,可以先 grep '2014-12-17 16:17:20' test.log 来确定日志中是否有该时间点,以确保第4步可以拿到日志
这个根据时间段查询日志是非常有用的命令.
如果我们查找的日志很多,打印在屏幕上不方便查看, 有两个方法:
(1)使用more和less命令, 如: cat -n test.log |grep "地形" |more 这样就分页打印了,通过点击空格键翻页
(2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析.如:
cat -n test.log |grep "地形" >xxx.txt
㈢ linux系统怎么查看文件指定行的数据
linux系统查看文件指定行的数据可以使用sed命令。
1、比如如下图所示的t.tt的文件内容。
说明:sed是正则表达式工具,一般用于处理行。-n参数用于说明仅显示script处理后的结果,即只显示单引内执行的脚本。引号内的3p,3是行号,p是打印输出print的简写,t.tt是要操作的文件。