课堂练习题(1)

练习题

1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中
# tr ‘a-z’ ‘A-Z’ < /etc/issue > /tmp/issue.out
# tr  ‘[:lower:]’ ‘[:upper:]’ < /etc/issue > /tmp/issue.out
# cat /etc/issue | tr ‘a-z’ ‘A-Z’ > /tmp/issue.out
2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中
# who | tr ‘a-z’ ‘A-Z’ > /tmp/who.out
3、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:
Hello, I am 用户名,The system version is here,please help me to check it ,thanks!
操作系统版本信息
# mail -s “help” root << EOF
Hello, I am $USER, The system version is here,please help me to check it ,thanks!
OS version: `lsb_release -a`
EOF
4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开
# ls /etc | tr ‘\n’ ‘ ‘ |tr -s ‘ ‘
5、计算1+2+3+..+99+100的总和
# echo {1..100} | tr ‘ ‘ ‘+’ | bc
# seq  -s ‘+’ 100 | bc
6、删除Windows文本文件中的‘^M’字符
# tr -d ‘\15’ win.txt
7、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格
# echo ‘xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4’ | tr -dc ‘[:alnum:]’
8、将PATH变量每个目录显示在独立的一行
# echo $PATH |tr ‘:’ ‘\n’
9、将指定文件中0-9分别替代成a-j
# tr ‘0-9’ ‘a-j’ < fil1.txt
10、将文件/etc/centos-release中每个单词(由字母组成)显示在独立的一行,并无空行
# tr -s ‘ ‘ ‘\n’ < /etc/centos-release
11、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为”Gentoo Distribution”
# useradd -G bin,root -s /bin/csh -c “Gentoo Distribution” gentoo
12、创建下面的用户、组和组成员关系
名字为webs 的组
# groupadd webs
用户nginx 使用webs 作为附属组
# useradd -G webs nginx
用户varnish,也使用webs 作为附属组
# useradd -G webs varnish
用户mysql,不可交互登录系统,且不是webs 的成员,nginx,varnish,mysql密码都是magedu
# useradd -r mysql
# echo “magedu” | passwd –stdin nginx
# echo “magedu” | passwd –stdin varnish
# echo “magedu” | passwd –stdin mysql
13、显示当前时间,格式:2016-06-18 10:20:30
# date “+%F %T”
14、显示前天是星期几
# date -d ‘-2 day ‘ +%A
15、设置当前日期为2019-08-07 06:05:10
# date 080706052019.10    (格式: 月日时分年.秒)
16、在本机字符终端登录时,除显示原有信息外,再显示当前登录终端号,主机名和当前时间
# who am i   (whoami只显示登录用户)
17、今天18:30自动关机,并提示用户
# shutdown -h 18:30 “The system will be shutdown at 18:30”
18、显示/var目录下所有以l开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录
# ls -d /var/l*[[:digit:]]*[[:lower:]]
19、显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录
# ls -d /etc/[0-9]*[^0-9]
# ls -d /etc/[[:digit:]]*[^[:digit:]]
20、显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录
# ls -d /etc/[^[:alpha:]][[:alpha:]]*
21、显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录
# ls -d /etc/rc[0-6]*
22、显示/etc目录下,所有以.d结尾的文件或目录
# ls -d /etc/*.d
23、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
# ls -d /etc/[mnrp]*.conf
24、只显示/root下的隐藏文件和目录
# ls -d .*
25、只显示/etc下的非隐藏目录
# ls -d  /etc/*/
26、定义别名命令baketc,每天将/etc/目录下所有文件,备份到/app独立的子目录下,并要求子目录格式为backupYYYY-mm-dd,备份过程可见
# alias baketc=’cp -av /etc/  /app/backup`date +%F`’
27、创建/app/rootdir目录,并复制/root下所有文件到该目录内,要求保留原有权限
# mkdir -p /app/
# cp -a /root/ /app/rootdir
28.如何创建/testdir/dir1/x, /testdir/dir1/y, /testdir/dir1/x/a, /testdir/dir1/x/b, /testdir/dir1/y/a, /testdir/dir1/y/b
# mkdir -pv /test/dir1/{x,y}/{a,b}
29.如何创建/testdir/dir2/x,/testdir/dir2/y,/testdir/dir2/x/a,/testdir/dir2/x/b
# mkdir -pv /testdir/dir2/{x/{a,b},y}
30.如何创建/testdir/dir3, /testdir/dir4, /testdir/dir5, /testdir/dir5/dir6, /testdir/dir5/dir7
# mkdir -pv /testdir/dir{3,4,5/dir{6,7}}

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

(2)
涤生涤生
上一篇 2018-04-03
下一篇 2018-04-03

相关推荐

  • 手把手系列(三)教你自制简单Linux系统

    CentOS启动相关最重要的几个文件有:内核vmlinuz文件、虚拟文件系统initramfs文件、grub文件以

    及init启动程序,围绕这几个文件,我们来制作一个能够简单启动的自制Linux系统

    2018-05-14
  • 在VM中安装CentOS6.10

    CenOS6.10详细安装过程,用于课堂笔记

    2018-07-19
  • ssh等

    SSH端口转发 SSH会自动的加密和解密所有SSH客户端与服务器之间的网络数据;同时也可以将其他TCP端口的数据加密转发,这一过程叫“隧道”,这样也可以减少防火墙开启的端口。 实现过程是数据首先通过连接本机的某一个端口,被当做ssh协议数据发送给ssh服务器,ssh服务器解密再发给远程主机的端口 本地转发: -L localport:remotehost:r…

    2018-05-28
  • DNS搭建

    DNS:domain name service ,协议(c/s,53/udp,53/tcp dns协议的实现 udp:user datagram protocol,无连接协议 top level domain:顶级域名(tld) 主dns服务器:维护负责解析的域内解析库服务器:解析库有管理员维护 从dns服务器:从主dns服务器或者其它dns服务器上复制(区…

    2018-06-11
  • mysql数据库四

    备份和还原 主从复制,

    2018-06-11