AmazingCounters.com

牛刀小试(linux基础练习题)做上10遍

三.使用帮助

 

   1、显示当前时间,格式:2016-06-18 10:20:30
   2、显示前天是星期几
   3、设置当前日期为2019-08-07 06:05:10

 

四.文件管理

 

   1、显示/var目录下所有以l开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录

   2、显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录
   3、显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录
   4、显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录
   5、显示/etc目录下,所有以.d结尾的文件或目录
   6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
   7、只显示/root下的隐藏文件和目录
   8、只显示/etc下的非隐藏目录
   9、定义别名命令baketc,每天将/etc/目录下所有文件,备份到/testdir独立的子目录下,并要求子目录格式为
      \backupYYYY-mm-dd,备份过程可见
  10、创建/testdir/rootdir目录,并复制/root下所有文件到该目录内,要求保留原有权限
  11、如何创建/testdir/dir1/x, /testdir/dir1/y,/testdir/dir1/x/a, /testdir/dir1/x/b,/testdir/dir1/y/a, /testdir/dir1/y/b
  12、如何创建/testdir/dir2/x, /testdir/dir2/y,/testdir/dir2/x/a, /testdir/dir2/x/b
  13、如何创建/testdir/dir3, /testdir/dir4, /testdir/dir5,/testdir/dir5/dir6, /testdir/dir5/dir7

 

五.标准I/O和管道

 

   1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中
   2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中
   3、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:Hello, I am 用户名,The system version is here,please help

      me tocheck it,thanks!操作系统版本信息

   4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开
   5、计算1+2+3+..+99+100的总和
   6、删除Windows文本文件中的‘^M’字符
   7、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格
   8、将PATH变量每个目录显示在独立的一行
   9、将指定文件中0-9分别替代成a-j
  10、将文件中每个单词(由字母组成)显示在独立的一行,并无空行
  11、取出/etc/passwd文件中的第六行到第十行,并将这些信息按照第三个字段的数值大小进行排序,最后仅显示各自的第一个字段

 

六.用户组和权限管理

 

   1、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为"Gentoo Distribution"
   2、创建下面的用户、组和组成员关系名字为admins 的组用户natasha,使用admins 作为附属组用户harry,也使用admins
      作为附属组用户sarah,不可交互登录系统,且不是admins 的成员,natasha,harry,sarah密码都是centos
   3、当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作?
   4、当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作?
   5、当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件file1是否可修改和删除?
   6、当用户wangcai 对/testdir 目录有写和执行权限时,该目录下的只读文件file1是否可修改和删除?
   7、复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限
   8、误删除了用户wangcai的家目录,请重建并恢复该用户家目录及相应的权限属性
   9、在/testdir/dir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能
      对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。
  10、备份/testdir/dir里所有文件的ACL权限到/root/acl.txt中,清除/testdir/dir中所有ACL权限,最后还原ACL权限

 

七.文本处理工具



   1、找出ifconfig “网卡名” 命令结果中本机的IPv4地址
   2、查出分区空间使用率的最大百分比值
   3、查出用户UID最大值的用户名、UID及shell类型
   4、查出/tmp的权限,以数字方式显示
   5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
   6、显示/proc/meminfo文件中以大小s开头的行(要求:使用两种方法)
   7、显示/etc/passwd文件中不以/bin/bash结尾的行
   8、显示用户rpc默认的shell程序
   9、找出/etc/passwd中的两位或三位数
  10、显示CentOS7的/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面存非空白字符的行   

  11、找出“netstat -tan”命令的结果中以‘LISTEN’后跟任意多个空白字符结尾的行
  12、显示CentOS7上所有系统用户的用户名和UID
  13、添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户名同shell名的行
  14、利用df和grep,取出磁盘各分区利用率,并从大到小排序
  15、显示三个用户root、mage、wang的UID和默认shell
  16、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行
  17、使用egrep取出/etc/rc.d/init.d/functions中其基名
  18、使用egrep取出上面路径的目录名
  19、统计last命令中以root登录的每个主机IP地址登录次数
  20、利用扩展正则表达式分别表示0-9、10-99、100-199、200-249、250-255
  21、显示ifconfig命令结果中所有IPv4地址
  22、将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

八.vim文本编辑工具

   1、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符
   2、复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令为/tmp/functions的每行开头为空白字符的行的
      行首添加一个#号
   3、在vim中设置tab缩进为4个字符
   4、复制/etc/rc.d/init.d/functions文件至/tmp目录,替换/tmp/functions文件中的/etc/sysconfig/init为/var/log
   5、删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号

 

九.shell脚本编程基础

   

   1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IP地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。
   2、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中
   3、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空间利用率最大的值
   4、编写脚本/root/bin/links.sh,显示正连接本主机的每个远程主机的IPv4地址和连接数,并按连接数从大到小排序


  

 十.文件查找与压缩

 

   1、查找/var目录下属主为root,且属组为mail的所有文件

   2、查找/var目录下不属于root、lp、gdm的所有文件  

   3、查找/var目录下最近一周内其内容修改过,同时属主不为 root,也不是postfix的文件

   4、查找当前系统上没有属主或属组,且最近一个周内曾被访 问过的文件

   5、查找/etc目录下大于1M且类型为普通文件的所有文件

   6、查找/etc目录下所有用户都没有写权限的文件

   7、查找/etc目录下至少有一类用户没有执行权限的文件

   8、查找/etc/init.d目录下,所有用户都有执行权限,且其它 用户有写权限的文件

 

十一.软件包管理

 

   1、查询命令java来自于哪个rpm包

   2、yum的配置和使用,包括yum仓库的创建

   3、编写系统初始化脚本reset.sh,包括别名,提示符颜色, yum仓库配置文件,安装tree,ftp,lftp,telnet等包

   4、在CentOS6上编译安装apache 2.2源码包,并启动此服务

   5、在CentOS7上编译安装apache 2.4源码包,并启动此服务

 

十二.磁盘管理

 

   1、创建一个2G的文件系统,块大小为2048byte,预留1%可 用空间,文件系统ext4,卷标为TEST,要求此分区开机后自 动挂载至/test目录,

    且默认有acl挂载选项

   2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 否则,则显示最后

      一 个磁盘上的空间使用信息

   3、将CentOS6的CentOS-6.8-x86_64-bin-DVD1.iso和 CentOS-6.8-x86_64-bin-DVD2.iso两个文件,合并成一 个CentOS-6.8-x86_64

    -Everything.iso文件,并将其配置 为yum源

 

十三.高级文件管理

 

    1、创建一个可用空间为1G的RAID1设备,文件系统为ext4 ,有一个空闲盘,开机可自动挂载至/backup目录

    2、创建由三块硬盘组成的可用空间为2G的RAID5设备,要 求其chunk大小为256k,文件系统为ext4,开机可自动挂载 至/mydata目录

    3、创建一个至少有两个PV组成的大小为20G的名为testvg的 VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻 辑卷testlv;挂载

     至/users目录

    4、新建用户archlinux,要求其家目录为/users/archlinux ,而后su切换至archlinux用户,复制/etc/pam.d目录至自己 的家目录 

    5、对testlv创建快照,并尝试基于快照备份数据,验正快照 的功能

 

十四.文本处理工具

    

    1、删除centos7系统/etc/grub2.cfg文件中所有以空白开头 的行行首的空白字符

    2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空 白字符的行的行首的#和空白字符

    3、在centos6系统/root/install.log每一行行首增加#号

    4、在/etc/fstab文件中不以#开头的行的行首增加#号

    5、处理/etc/fstab路径,使用sed命令取出其目录名和基名

    6、利用sed 取出ifconfig命令中本机的IPv4地址

    7、统计centos安装光盘中Package目录下的所有rpm文件的 以.分隔倒数第二个字段的重复次数 

    8、统计/etc/init.d/functions文件中每个单词的出现次数, 并排序(用grep和sed两种方法分别实现)

    9、将文本文件的n和n+1行合并为一行,n为奇数行

 

posted @ 2017-07-29 16:10  黑夜繁星  阅读(3215)  评论(0编辑  收藏  举报
AmazingCounters.com