sed练习题答案

答案不唯一有更好答案请留言

1、查找/var目录下属主为root,且属组为mail的所有文件
find /var -user root -group mail -ls
2、查找/var目录下不属于root、lp、gdm的所有文件
find /var -not \( -user root -o -user lp -o -user gdm \) -ls
3、查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件
find /var -atime -7 ! \( -user root -o -user postfix \) -ls
4、查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件
find /var \( -nouser -o -nogroup \) -atime -7 -ls
5、etc查找/etc目录下大于1M且类型为普通文件的所有文件
find /etc -type f -size 1024k
6、查找/etc目录下所有用户都没有写权限的文件
find /etc ! -perm +222 -ls
7、查找/etc目录下至少有一类用户没有执行权限的文件
find /etc ! -perm -111 -ls
8、查找/etc/init.d目录下,所有用户都有执行权限,且其它用户有写权限的文件
find /etc/init.d -perm -111 -a -perm -002 -ls
9、删除centos7系统/etc/grub2.cfg文件中所有以空白开头的行行首的空白字符
cat /etc/grub2.cfg |sed -r ‘s/^\ +(.*)/\1/’
10、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符
cat /etc/fstab |sed -r ‘s/^#\ ?(.*)/\1/’|sed ‘/^$/d’
11、在centos6系统/root/install.log每一行行首增加#号
cat /root/install.log |sed -r ‘s/^/#$/’
12、在/etc/fstab文件中不以#开头的行的行首增加#号
cat /etc/fstab |sed -r ‘s/[^#]/#$/’
13、处理/etc/fstab路径,使用sed命令取出其目录名和基名
echo “/etc/sysconfig/network-scripts/”|sed -r ‘s@(^/.*/)([^/]+/?)@\2@’取基名
14、利用sed 取出ifconfig命令中本机的IPv4地址
ifconfig |sed -n ‘2p’|sed -r ‘s/.*inet (.*) net.*/\1/
取两个网址ifconfig |grep ens -A1 |sed ‘/ens/d’|sed -r ‘s/.*inet (.*) net.*/\1/’
15、统计centos安装光盘中Package目录下的所有rpm文件的以.分隔倒数第二个字段的重复次数
ls /misc/cd/Packages|grep ‘.rpm$’ |sed -r ‘s/.*\.(.*)\.rpm/\1/’|sort|uniq -c
ls /misc/cd/Packages |rev|cut -d”.” -f2|sort|uniq -c
16、统计/etc/init.d/functions文件中每个单词的出现次数,并排序(用grep和sed两种方法分别实现)
cat /etc/init.d/functions |sed -r ‘s/[^[:alpha:]]+/\n/g’|sed ‘/^$/d’ |sort|uniq -c
cat /etc/init.d/functions |grep -o “[[:alpha:]]\{2,\}”|sort|uniq -c
17、将文本文件的n和n+1行合并为一行,n为奇数行
nl /etc/passwd |sed ‘N;s/\n//’

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95845

(1)
天策天策
上一篇 2018-04-13 17:26
下一篇 2018-04-13 19:57

相关推荐

  • 马哥网络班第31期——第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示
    3、请使用命令行展开功能来完成以下练习
    (1)创建/tmp目录下的:a_c,a_d,b_c,b_d
    (2)创建/tmp/mylinux目录下的:
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中
    12、复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中

    Linux笔记 2018-07-18
  • Linux用户登录以及命令执行原理

    linux登录介绍,初识shell

    2018-07-22
  • Linux用户和组管理

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。 5、取出当前主机的…

    Linux笔记 2018-07-13
  • Linux用户组管理及用户权限及管道符应用

    一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ]# who |  cut -d ‘ ‘ -f1 | sort -u who:显示所有已经登录用户的用户名 cut -d ‘ ‘ -f1:取第1列字段数据   sort -u:忽略相同行数据 二、取出最后登录到…

    2018-07-07
  • 网络管理第一篇

    重点介绍OSI七层模型和TCP/IP四层模型,理解TCP三次握手和TCP的四次挥手以及IP地址的分类,另外基本的网络配置命令下次在介绍,精彩内容请听下回分解

    2018-04-28