一、针对/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. 1+x 证书 Web 前端开发 CSS3 专项练习

    官方QQ群 1+x 证书 Web 前端开发 CSS3 专项练习 http://blog.zh66.club/index.php/archives/196/

  2. Tsung 安装

    1. Tsung是什么,有哪些特性? Tsung是一个开源.多协议.分布式的压力测试工具.它可以用来测试HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP 和Jab ...

  3. Mongodb--内存管理MMAP

    MongoDB使用的是内存映射存储引擎,即Memory Mapped Storage Engine,简称MMAP. MMAP可以把磁盘文件的一部分或全部内容直接映射到内存,这样文件中的信息位置就会在内 ...

  4. 【Maven】【IDEA】在idea中开发web项目,解决maven的jar包冲突的方法

    在idea中开发web项目,解决maven的jar包冲突的方法 第一步: 先对项目进行 clean ,再进行install 第二步: 出现NoSuchMethodException,ClassNotF ...

  5. C# WebAPI 文件在线预览

    最近在写一个移动端API接口,其中有一个需求:接口返回附件url地址让手机端调用实现文件在线预览.大体实现思路:把doc.xls等文本格式文件转换为pdf,转换后的pdf文件存放在服务器上面,方便第二 ...

  6. Codeforces 1256A 1257A

    题目链接:https://codeforces.com/problemset/problem/1256/A A. Payment Without Change time limit per test ...

  7. JavaScript中的 JSON 和 JSONP

    JSON 和 JSONP JSONP是一种发送JSON数据的方法,无需担心跨域问题.JSONP不使用该XMLHttpRequest对象.JSONP使用<script>标签代替.由于跨域策略 ...

  8. colmap编译过程中出现,无法解析的外部符号错误 “__cdecl google::base::CheckOpMessageBuilder::ForVar1(void)”

    错误提示: >colmap.lib(matching.obj) : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: cl ...

  9. Excel解析工具easyexcel全面探索

    1. Excel解析工具easyexcel全面探索 1.1. 简介 之前我们想到Excel解析一般是使用POI,但POI存在一个严重的问题,就是非常消耗内存.所以阿里人员对它进行了重写从而诞生了eas ...

  10. Oh-My-Zsh的配置与使用

    什么是Shell? 相对于内核来说,Shell是Linux/Unix的一个外壳,它负责外界与Linux内核的交互,接收用户或其他应用程序的命令,然后把这些命令转化成内核能理解的语言,传给内核,内核是真 ...