一、针对/etc/passwd操作

1、sed操作,将文件中的第九行至第十五行复制到第16行下。

[root@ns1 lianxi]# sed '9,15H;16G' /etc/passwd

2、用awk获取文件中第三行的倒数第二列字段。

[root@ns1 lianxi]# awk -F: 'NR==3{print $(NF-1)}' /etc/passwd

二、针对test.txt文件操作

1、第一列为aaa行的每一行求和

[root@ns1 lianxi]# sed -n '/^aaa/p' test.txt | awk '{print $2+$3+$4+$5}'

[root@ns1 lianxi]# sed -n '/^aaa/p' test.txt | awk '{sum=0;for(i=2;i<=NF;i++){sum+=$i}print sum}'

[root@ns1 lianxi]# awk '(NR%2)==1{{sum+=$2+$3+$4+$5}print sum}' test.txt 

2、对文件偶数行求和

[root@ns1 lianxi]# awk '(NR%2)==0{print}' test.txt | awk '{sum=0;for(i=2;i<=NF;i++){sum+=$i}print sum}'

[root@ns1 lianxi]# awk '(NR%2)==0{print}' test.txt | awk '{print $2+$3+$4+$5}'

[root@ns1 lianxi]# awk '(NR%2)==0{{sum+=$2+$3+$4+$5}print sum}' test.txt

3、取出文件中的最大值

[root@ns1 lianxi]# awk '{print $2,$3,$4,$5}' test.txt | sed 's/ /\n/gp' | sort -nr | head -1

4、将test.txt文件中的所有的空格替换成!

[root@ns1 lianxi]# sed 's/ /!/gp' test.txt

三、case、which、continue的用法

1、case的用法

shell脚本中case选择语句可以结合read指令实现比较好的交互应答操作,case接收到read指令传入一个或多个参数,然后case根据参数做选择操作。

case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
*)
默认命令序列
esac

2、which的用法

which命令是查找命令是否存在,以及命令的存放位置在哪。

3、continue的用法

continue就是不执行当前的循环,而跳到下一个循环。

四、使用命令查看ssh的并发请求与其TCP链接状态 

[root@ns1 lianxi]# netstat -anpt | grep :22 | awk '{print $6}' | sort  | uniq -c

五、ps aux中的VSZ和RSS代表的含义

a 显示所有与终端相关的进程,由终端发起的.
x 显示所有与终端无关的进程.
u 显示用户导向的用户列表.
VSZ 虚拟内存集,进程占用的虚拟内存空间
RSS 物理内存集,进程战用实际物理内存空间.
S 可中断的睡眠态
R 运行态
D 不可中断的睡眠态
T 停止态 Z 僵死态

六、写出下列shell脚本:使用for循环在/opt下通过随机小写10位长度字母加上固定字符串test批量创建10个html文件,并且html大写。

for i in {1..10}
do
aa=$(tr -dc 'a-z' </dev/urandom | head -c 10)
touch /opt/$aa'_test.HTML'
done

七、随机生成十位数字,随机生成十位字母,随机生成10为字母+数字的混合,随机生成十位字母+数字+特殊符号的混合。

[root@ns1 lianxi]# tr -dc '1-9' </dev/urandom | head -c 10;echo

[root@ns1 lianxi]# tr -dc 'a-z' </dev/urandom | head -c 10;echo

[root@ns1 lianxi]# tr -dc 'a-z1-9' </dev/urandom | head -c 10;echo

[root@ns1 lianxi]# tr -dc 'a-z1-9$@!#%&' </dev/urandom | head -c 10;echo

sed和awk练习及知识点的更多相关文章

  1. Sed、Awk单行脚本快速参考

    文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...

  2. sh脚本学习之: sh脚本 、sed、awk

    sh脚本 sh命令的批处理文件,支持更复杂的逻辑. Shell中的变量 参数 $0 当前脚本路径 $1....$n 脚本执行对应的第n个参数 条件判断 文件判断 test [op] path e存在 ...

  3. 一个利用sed和awk处理文本的小栗子

    这两天做<Linux操作系统>课程的作业,碰到了一个题目,感觉很有意思,很考验对awk掌握的熟练度,故特意拿来分享. 首先说题目是这样的,有这样一段文本: RECORD #这是多余的注释行 ...

  4. Pyp 替代sed,awk的文本处理工具

    Linux上文本处理工具虽不少,像cut,tr,join,split,paste,sort,uniq,sed,awk这些经典工具让人眼花缭乱,而且都太老了,使用方法都不太人性化,尤其awk,语法简直反 ...

  5. sed and awk学习笔记

    sed and awk 背景 awk起源追溯至sed和grep,进而追溯至共同的行编辑器ed.实用工具grep来源于ed命令:g/re/p .实用工具awk和sed有一个共同的选项-f用于指定脚本的名 ...

  6. 三大文本处理工具grep、sed及awk的简单介绍

    grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...

  7. 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式

    正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...

  8. sed和awk最佳入门教程

    文档<sed和awk最佳入门教程>——摘自<实战linux shell编程与服务器管理>,简单易懂,适合初学者. 下载地址:http://download.csdn.net/d ...

  9. grep、sed、awk、perl、js、vim等对正则表达式的支持的差别

    grep.sed.awk.perl等对正则表达式的支持的差别 grep 2.5.1 egrep 2.5.1 sed 3.02 sed 4.07 awk 3.1.1 perl 5.8.0 vim 6.1 ...

随机推荐

  1. Spring Cloud和Spring Boot的版本问题

    很多人在使用springboot和springcloud,但是对于这两者之间的版本关系不是很清楚,特别是在面临升级的时候不知道该如何操作.本文简要摘录的官方文档的部分内容作为依据,供广大同行参考. 问 ...

  2. ASP.NET Core快速入门(第2章:配置管理)- 学习笔记(转载)

    原文地址:https://mp.weixin.qq.com/s?__biz=MjM5NjMzMzE2MA==&mid=2451733443&idx=2&sn=6d01721c5 ...

  3. pycharm报错:ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory

    pycharm报错:ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory ...

  4. DVWA-文件包含学习笔记

    DVWA-文件包含学习笔记 一.文件包含与漏洞 文件包含: 开发人员将相同的函数写入单独的文件中,需要使用某个函数时直接调用此文件,无需再次编写,这种文件调用的过程称文件包含. 文件包含漏洞: 开发人 ...

  5. dubbo(提供者、消费者)基于java的实现

    1.安装好jdk.zookeeper以后可以尝试开发代码进行dubbo的学习和练习. 首先创建Dubbo的Provider配置.创建一个maven project工程. RPC框架,不希望Consum ...

  6. Delphi - DateTimePicker控件日期格式

    设置成显示年.月.日.时.分.秒 1:将DateTimePicker的Format属性中加入日期格式设成 'yyyy-MM-dd HH:mm:ss',注意日期里月份对应的MM是大写,时间里的分钟对应的 ...

  7. 剑指 Offer——13. 调整数组顺序使奇数位于偶数前面

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变.这和书本不太一样. 解 ...

  8. Delphi对Excel保护操作

    http://www.docin.com/p-378093577.html在金融系统的应用系统中经常需要与Excel交换数据或利用Excel制作报表,但在某些情况下,我们的业务系统要求生成的临时或最终 ...

  9. Linux 的一些命令记录

    FTP:https://www.cnblogs.com/leoxuan/p/8329998.html YUM:https://blog.csdn.net/allyli0022/article/deta ...

  10. 基于rtmp+nginx 、vlc实现FFmpeg推流与wpf端拉流

    这周在研究基于rtmp+nginx直播流的实现,现总结如下: 0.所需文件: 链接:https://pan.baidu.com/s/1U5gsNI8Rcl684l5gVL6swg 提取码:dli9 1 ...