RedHat运维-Linux文本操作基础-GREP,AWK,SED基础

2024-06-19 20:36

本文主要是介绍RedHat运维-Linux文本操作基础-GREP,AWK,SED基础,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

你不用整理,跟着敲一遍,有个印象,然后把它保存到本地,以后要用再去看,如果有了新东西,你自个再添加。这是我参考同行的,只不过换成了问答的方式而已。不用背,就算是我自己亲自敲,我现在好多也记不住。

二. awk
1. 使用awk命令,过滤出/etc/passwd文件中,包含有字符串“mail”的所有行,命令为_______________________________;
2. 使用awk命令,过滤出/etc/passwd文件中,包含有字符串“opensuse”的所有行,命令为_____________________________;
3. 使用awk命令,过滤出/etc/passwd文件中,包含有字符串“mail”或者“opensuse”的所有行,命令为__________________________;
4. 使用awk命令,过滤出/etc/passwd文件中,字符串“mail”打头或者“opensuse”打头的所有行,命令为_______________________;
5. 假设当前系统的工作目录为/etc/firewalld,如果想结合grep命令,打印出在/etc/firewalld/firewalld.conf中,不以字符“#”开头,且不是空行的所有行,并且用“=”来分割,输出第一和第二列,并且尽可能美观,则命令为___________________________________;
6. 假设当前系统的工作目录为/etc,如果想打印出passwd中包含有字符串“mail”或者“opensuse”的所有行,用冒号分割,输出第一第四列,并且让结果尽可能美观,则命令为____________________________________;
7. 假设当前系统的工作目录为/etc,如果想打印出group中包含有字符串“opensuse”的所有行,用冒号分割,输出第一第三列,并且让结果尽可能美观,则命令为_____________________________________;
8. 假设当前系统的工作目录为/etc,如果想打印出shadow中包含有字符串“opensuse”或者“OPen”的所有行,用冒号分割,输出第一第二列,并且让结果尽可能美观,则命令为________________________________;
9. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,筛选出第三列值大于500的行,并输出这些行的第一第三列值,并且让结果尽可能美观,则命令为___________________________________;
10. 假设当前系统的工作目录为/etc,如果想打印出shadow中包含有字符串“opensuse”或者“OPen”的所有行,用冒号分割,输出行号、第一列和第二列,并且让结果尽可能美观,则命令为________________________________;
11. 假设当前系统的工作目录为/etc,如果想打印出shadow中包含有字符串“opensuse”或者“OPen”的所有行,用冒号分割,输出行号、本行所有内容、第一列内容,并且让结果尽可能美观,则命令为_______________________________;
12. 通过什么命令组合,可以求出passwd中以冒号分割时每一行字段的个数?________________________________;
13. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出第七行及其之后的所有的行号以及第一列值,并且让结果尽可能美观,则命令为_________________________________________;
14. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出第七行及其之后,第三十行及其之前的所有的行号以及第一列值,并且让结果尽可能美观,则命令为_________________________________________;
15. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出第七行及其之后,第三十行及其之前,且第三列值大于475的所有的行号以及第一列值,并且让结果尽可能美观,则命令为_________________________________________;
16. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出每行的行号、第一列内容及最后一列内容,并且让结果尽可能美观,则命令为_______________________________________;
17. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出每行的行号、第一列内容及倒数第三列内容,并且让结果尽可能美观,则命令为_______________________________________;
18. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,但不使用-F选项,输出每行的行号、第一列内容及倒数第三列内容,并且让结果尽可能美观,则命令为_____________________________________;
19. 关于双引号与单引号的使用,在grep中,尽量全部都使用单引号,在awk中,当需要调整FS的值的时候,必须使用___________(你懂的)。
20. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,但不使用-F选项,输出每行的行号、第一列内容及倒数第三列内容,用“+”隔开,则命令为_____________________________________;
21. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,输出每行的第一第三列内容,同时添加一些自定义字符串,使得输出的结果大致如下所示:
User root has id: 0
User messagebus has id: 499
User tftp has id: 498
则命令为_____________________________________;
22. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,过滤出包含“root”到包含“mail”字符串之间的所有行,并且输出每行的第一第三列内容,则命令为___________________________________;
23. 假设当前系统的工作目录为/etc,将passwd中的内容用冒号分割,过滤出包含“root”到包含“mail”字符串之间的所有行,并且输出每行的第一第三列内容,格式要尽量美观,则命令可以为___________________________________;
24. 如何获取环境变量的所有名字?
25. 如何获取当前主机上的可用内存?
二. awk
1. awk '/mail/' /etc/passwd
2. awk '/opensuse/' /etc/passwd
3. awk '/mail|opensuse/' /etc/passwd
4. awk '/^mail|^opensuse/' /etc/passwd
5. grep -Ev '^#|^$' firewalld.conf | awk -F '=' '{print $1, $2}' | column -t
6. awk -F ':' '/mail|opensuse/{print $1, $4}' /etc/passwd
7. awk -F ':' '/opensuse/{print $1, $3}' /etc/group | column -t
8. awk -F ':' '/opensuse|OPen/{print $1, $2}' /etc/shadow | column -t
9. awk -F ':' '$3>500{print $1, $3}' /etc/passwd | column -t
10. awk -F ':' '/opensuse|OPen/{print NR, $1, $2}' /etc/shadow | column -t
11. awk -F ':' '/opensuse|OPen/{print NR, $0, $1}' /etc/shadow | column -t
12. awk -F ':' '/root/{print NF}' /etc/shadow
13. awk -F ':' 'NR>=7{print NR, $1}' /etc/passwd | column -t
14. awk -F ':' 'NR>=7&&NR<=30{print NR, $1}' /etc/passwd | column -t
15. awk -F ':' 'NR>=7&&NR<=30&&NF>475{print NR, $1}' /etc/passwd | column -t
16. awk -F ':' '{print NR, $1, $NF}' /etc/passwd | column -t
17. awk -F ':' '{print NR, $1, $(NF-2)}' /etc/passwd | column -t
18. awk 'BEGIN{FS=":"}{print NR, $1, $(NF-2)}' /etc/passwd | column -t
19. 双引号
20. awk 'BEGIN{FS=":";OFS="+"}{print NR, $1, $(NF-2)}' /etc/passwd
21. awk 'BEGIN{FS=":"}{print "User", $1, "has id:", $3}' /etc/passwd
22. awk -F ':' '/root/, /mail/{print $1, $3}' /etc/passwd
23. awk -F ':' '/root/, /mail/{printf "%-16s %-20s \n", $1, $3}' /etc/passwd
24. export | awk -F'[ =]' '{print $3}'
25. free -m | awk 'NR==2{print $7}'
 

这篇关于RedHat运维-Linux文本操作基础-GREP,AWK,SED基础的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1076083

相关文章

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Python ZIP文件操作技巧详解

《PythonZIP文件操作技巧详解》在数据处理和系统开发中,ZIP文件操作是开发者必须掌握的核心技能,Python标准库提供的zipfile模块以简洁的API和跨平台特性,成为处理ZIP文件的首选... 目录一、ZIP文件操作基础三板斧1.1 创建压缩包1.2 解压操作1.3 文件遍历与信息获取二、进阶技

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文