随笔分类 -  shell相关

shell脚本,利用awk计算指定范围内的和。
摘要:期望得到结果如下: vivi 42800Tom 32500John 104500 解题方法如下: 1.利用数组来进行解题。 阅读全文

posted @ 2016-12-22 13:37 王月波 阅读(1717) 评论(0) 推荐(0) 编辑

shell脚本,awk结合正则来打印文件里面的内容。
摘要:文件内容如下:key1abc d key2 1.想得到如下结果: abc d 2.想得到如下结果: key1key2 阅读全文

posted @ 2016-12-09 00:07 王月波 阅读(2744) 评论(0) 推荐(0) 编辑

shell脚本,awk实现跳过文件里面的空行。
摘要:1.用awk '{if(!NF ){next}}1' file11 实现对文件里面的空行进行跳过操作,并输出结果。 2. awk '{if(!NF || /^#/){next}}1' file11 实现对文件里面的空行和#开头的行进行跳过操作,并输出结果。 阅读全文

posted @ 2016-12-04 23:30 王月波 阅读(10443) 评论(0) 推荐(0) 编辑

shell脚本,awk里面的BEGIN讲解。
摘要:解释: BEGIN{}这个特殊的pattern最常用的就是 变量赋值。 BEGIN这个pattern就是文件没开始读的时候 执行 awk 'BEGIN{FS=":";OFS="-"}{NF+=0}1' , 对应处理是 1:2:3 > 1-2-3 读取输入分隔符,换成输出分隔符 , 但是,awk有个问 阅读全文

posted @ 2016-11-30 00:04 王月波 阅读(7548) 评论(0) 推荐(0) 编辑

shell脚本,awk在需要的行上打打印空行。
摘要:注解: 判断每行中是否包含字母a,包含了,就将$1的值赋值给变量a,然后判断变量a是否存在,存在打印一个空行,在将变量的值使用空变量b赋值,最后在打印输出。 结果就是在包含有字符a的行上打印一个空行。 阅读全文

posted @ 2016-11-28 01:54 王月波 阅读(2484) 评论(0) 推荐(0) 编辑

shell脚本,awk利用NF来计算文本显示的行数。
摘要:解释: 1.awk 'NF{a++;print a,$0;next}1' file4 首先判断NF是否存在值,第一行第二行第三行第四行都存在,进行执行后面的输出,输出后碰到next后,就结束了后面的操作,NF不存在的行不进行执行{}里面的操作,然后就进行默认1输出。 2.awk 'NF{a++;$0 阅读全文

posted @ 2016-11-28 01:48 王月波 阅读(11967) 评论(0) 推荐(0) 编辑

shell脚本,awk取奇数行与偶数行方法。
摘要:第一种方法: 第二种方法: 第三种方法: 阅读全文

posted @ 2016-11-28 01:28 王月波 阅读(8185) 评论(0) 推荐(0) 编辑

shell脚本,awk取中间列的方法。
摘要:解释 1.$(int(NF/2)+1) 中int(NF/2)等于3,然后加1,就得到中间的4了。 2.$(NF/2+0.5) 相当于得出的是整数。NF/2是3.5,再由3.5+0.5,所以就是4了,也是中间数了。(四舍五入,小于五舍去,大于等于5进一位) 3.$((1+NF)/2) 相当于多了一个数 阅读全文

posted @ 2016-11-28 00:55 王月波 阅读(3961) 评论(0) 推荐(0) 编辑

shell脚本,每5个字符之间插入"|",行末不插入“|”。
摘要:[root@localhost zuoye2]# cat fileaaaaabbbbbcccccddddeeeeefffffkkkkkvvvvnnnnngggg[root@localhost zuoye2]# vi file[root@localhost zuoye2]# awk 'BEGIN{FS 阅读全文

posted @ 2016-11-11 02:31 王月波 阅读(2019) 评论(0) 推荐(0) 编辑

shell脚本,tee小工具的用法。
摘要:解释: tee是个工具 , 它的作用就是把标准输出,复制一份,扔文件里 ,原标准输出还输出,-a就相当于 >> 追加到文件里的意思。 不加就是 > 重定向到文件里去。 阅读全文

posted @ 2016-11-10 23:25 王月波 阅读(2823) 评论(0) 推荐(0) 编辑

shell脚本,逻辑结构题练习。
摘要:awk '/5/{a=1}!a' file2结果:1234解释:第一行 /5/不匹配跳过{a=1},继续!a,此时a没有值属于假取反为真,故输出第一行 第二行 /5/不匹配跳过{a=1},继续!a,此时a没有值属于假取反为真,故输出第二..第五行等于5 匹配/5/执行{a=1},继续!a,此时a=1 阅读全文

posted @ 2016-10-26 01:55 王月波 阅读(257) 评论(0) 推荐(0) 编辑

shell脚本,实现奇数行等于偶数行。
摘要:请把如下字符串stu494e222fstu495bedf3stu49692236stu49749b91转为如下形式:stu494=e222fstu495=bedf3stu496=92236stu497=49b91 利用AWK来实现 通过shell脚本来实现 阅读全文

posted @ 2016-10-26 01:23 王月波 阅读(1930) 评论(0) 推荐(0) 编辑

shell脚本,编程题练习。
摘要:题目是:将 文件file为 b+b+b+b+b+b+b+b 变为 b+b=b+b=b+b=b+b 解答方法如下: 阅读全文

posted @ 2016-10-20 00:36 王月波 阅读(1302) 评论(0) 推荐(0) 编辑

shell脚本,用awk实现替换文件里面的内容。
摘要:文件是这样,有ID和具体信息,ID行以@开头,后面的信息有空格,把第一个空格后的全部内容替换为空格前的字符。 用AWK来实现。 @AA10 P 7 #YYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZ@AQ9 TT 7 ttXXXXXXXXXXXXXXXXXWWWWWWWWWWW 阅读全文

posted @ 2016-10-01 00:51 王月波 阅读(19688) 评论(0) 推荐(1) 编辑

shell脚本,如果文件中的第一列有相同的,就把相同的那些行的其他字段相加。
摘要: 阅读全文

posted @ 2016-10-01 00:40 王月波 阅读(6305) 评论(0) 推荐(0) 编辑

shell脚本,awk替换{}里面的内容
摘要:如何将oxo{axbxc}oxo{dxexf}oxo里面的{}里面的x 替换为; 用awk实现 [root@localhost 09-30]# echo 'oxo{axbxc}oxo{dxexf}oxo'oxo{axbxc}oxo{dxexf}oxo[root@localhost 09-30]# e 阅读全文

posted @ 2016-10-01 00:26 王月波 阅读(6023) 评论(0) 推荐(0) 编辑

shell脚本,awk常见初始化变量的题目。
摘要:文件 内容如下 clone=line1gb=line1gi=line1lib=line1gb=line2gi=line2lib=line2clone=line3gb=line3gi=line3lib=line3gb=line4gi=line4lib=line4 如何变为下面的内容 lib=line1 阅读全文

posted @ 2016-10-01 00:12 王月波 阅读(1353) 评论(0) 推荐(0) 编辑

shell脚本,awk如何处理文件中上下关联的两行。
摘要:文件d.txt如下内容 ggg 1portals: 192.168.5.41:3260werew 2portals: 192.168.5.43:3260 如何把文件d.txt内容变为如下内容 ggg 192.168.5.41:3260werew 192.168.5.43:3260 解题思路: [ro 阅读全文

posted @ 2016-09-28 01:26 王月波 阅读(5621) 评论(0) 推荐(1) 编辑

shell脚本,awk 匹配的做修改后打印,不匹配的打印。
摘要:文件file内容如下a 1a 2b 3b 4 b 5c 6c 7 要求:第一列匹配b时,如果第二列大于3,那么将第二列加上1后打印,其余的原封不动打印。结果如下: a 1a 2b 3b 5 b 6c 6c 7 阅读全文

posted @ 2016-09-27 20:52 王月波 阅读(1794) 评论(0) 推荐(0) 编辑

shell脚本,awk合并一列的问题。
摘要:文件 file2内容如下:0 qwert1 asdfghjk2 asdjkl2 zxcvbn3 dfghjkll4 222224 tyuiop4 bnm 让第一列相等的合并成一行,不要第一列,也就是变为如下格式:22222;tyuiop;bnmqwertasdfghjkasdjkl;zxcvbndf 阅读全文

posted @ 2016-09-27 00:12 王月波 阅读(5929) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示