10练习题
awk相关
1.查看/etc/passwd文件里的第一行,将其倒置输出,要求输出结果为“/bin/bash:x:0:0:root:/root:root”
[root@oldboy ~]# sed -n '1p' /etc/passwd |sed 's#root:x:0:0:root:/root:/bin/bash#/bin/bash:x:0:0:root:/root:root#g'
2.只显示/etc/passwd文件的第五行
[root@oldboy ~]# sed -n '5p' /etc/passwd
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
3.使用ifconfig查看网卡信息,仅筛选出IP地址
[root@oldboy ~]# ifconfig|grep 'inet '|awk '{print2}'
4.将access.log"上传至你的linux服务器
(1)统计出该文件IP地址出现的次数,并按正序对其进行排序
[root@oldboy ~]# awk '{print$1}' access.log |sort|uniq -c|sort -nr
(2)统计该文件内HTTP状态返回码出现的次数(例如200,404,403,在第九列),并按照倒序进行排序
[root@oldboy ~]# awk '{print$9}' access.log |sort|uniq -c|sort -n
(3)过滤出所有状态返回码是200的行,并将这些返回码为200行的全部替换成300
[root@oldboy ~]# awk '{print$9}' access.log |grep '200'|sed 's#200#300#g'
5.匹配/etc/passwd里包含root关键字的行(要求至少两种方法,分别使用awk和grep)
[root@oldboy ~]# grep 'root' /etc/passwd
[root@oldboy ~]# awk '/root/' /etc/passwd
6.以“:”为分隔符,取出/etc/passwd第一行的最后一列的内容
[root@oldboy ~]# awk -F ':' '{print7}' /etc/passwd
7.取出以“:”为分隔符,第三列(用户UID)以0结尾的
[root@oldboy ~]# awk -F ':' '{print$3}' /etc/passwd|grep '0'
8.使用hostnamectl查看当前系统信息,取出kernel内核版本信息(如3.10.0-693.2.2.el7.x86_64)
root@oldboy ~]# hostnamectl |grep Kernel|awk '{print$3}'
9.使用"netstat -lntp"查看当前linux服务器开放的网络端口,过滤出远程连接服务关键字"sshd",取出该服务所占用的端口号"22"
[root@oldboy ~]# netstat -lnpt|grep sshd|awk '{print2}'
10.用awk获取/etc/passwd文件中第三行的倒数第二列字段
[root@oldboy ~]# sed -n '3p' /etc/passwd|awk '$NR {print $(NF-1)}'
用户权限相关
1.对名为fido的文件用chmod 551 fido进行了修改,则它的权限信息是 A
A.-rwxr-xr-x
B.-rwxr--r--
C.-r-xr-x--x
D.-rw-r-xr-x
2.改变文件所有者的命令为 C
A.chmod
B.touch
C.chown
D.cat
3.linux中,文件权限读,写,执行的三种标志符号依次是(A)
A.rwx
B.rox
C.orx
D.wrx
4.如果执行命令"chmod 746 file.txt"那么该文件的权限是?A
A.rwxr--rw-
B.rw-r--r--
C.--xr--rwx
D.jrwxr-r--
5.linux文件权限一共10位长度,分成四段,第三段代表的含义是()
第一段: 文件类型
第二段: 属主
第三段: 属组
第四段: 其他用户 匿名用户
6.当用户zabbix对/testdir 目录有写和执行权限时,该目录下的只读文件file1 是否可修改和删除?
能进到/testdir下,但不能ls,能修改,可以删除
7.复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限
[root@oldboyedu ~]# useradd wangcai
[root@oldboyedu ~]# groupadd sysadmins
[root@oldboyedu ~]# chown wangcai.sysadmins /var/tmp/fstab
[root@oldboyedu ~]# chmod 660 /var/tmp/fstab
[root@oldboyedu ~]# ll /var/tmp/fstab
-rw-rw----. 1 wangcai sysadmins 501 Aug 8 08:43 /var/tmp/fstab
8.创建下面的用户、组和组成员关系,用户natasha,使用admins作为附属组,用户harry,也使用admins作为附属组,
用户sh,不可交互登录系统,natasha,harry,sh密码都是centos
[root@oldboyedu ~]# groupadd admins
[root@oldboyedu ~]# useradd natasha -G admins
[root@oldboyedu ~]# useradd harry -G admins
[root@oldboyedu ~]# useradd sh -s /sbin/nologin
[root@oldboyedu ~]# echo "centos" | passwd --stdin natasha
[root@oldboyedu ~]# echo "centos" | passwd --stdin harry
[root@oldboyedu ~]# echo "centos" | passwd --stdin sh
9.修改jack的uid为666,用户名改为jacky
[root@oldboyedu ~]# usermod -u 666 -l jacky jack
10.把jacky的密码设置为123
11.切换控制台,用jacky帐户登录系统
[root@oldboyedu ~]# su - jacky
[jacky@oldboyedu ~]$
12.将rose加入到root组,用命令查看是否加入成功,查看/etc/group中root组中有无rose
[root@oldboyedu opt]# useradd rose -G root
[root@oldboyedu opt]# id rose
uid=6792(rose) gid=6792(rose) groups=6792(rose),0(root)
[root@oldboyedu opt]# grep "root" /etc/group
root:x:0:rose
13.以root身份建一个目录/test,查看这个目录的默认权限是?
drwxr-xr-x. 2 root root 6 Aug 6 20:30 test
14.进入/test目录中,建一个文件abc,查看其默认的权限为?
-rw-r--r--. 1 0 0 0 Aug 6 12:33 abc
15.转换为普通用户jacky登录,看能否进入/test目录,能否在里面创建文件,能否用vim编辑abc文件并保存退出
jack: 首先能进入该目录,能查看该目录下的所有内容
不能创建文件,不能删除文件\移动\复制\等操作,包括编辑文件
16.新建一个用户oldwoman,密码123,授予该用户可以使用ls命令操作任何目录,切换到该用户验证权限
jacky ALL=(ALL) /usr/bin/ls
17.将oldwoman用户的权限改为可以使用所有命令,并切换至该用户创建文件oldwoman.txt验证
jacky ALL=(ALL) ALL
18.使用"ls -l /"以长格式查看根目录,写出每一列所代表的含义
第一列:表示文件的属性
第二列:表示文件个数
第三列:表示该文件或目录的拥有者
第四列:表示所属的组(group)
第五列:表示文件大小
第六列:表示创建日期
第七列:表示文件名
19.当用户mysql对/data/DB目录无读权限,但是拥有写和执行权限,意味着能做哪些操作,无法做哪些操作?
1.能进入目录\ 能创建新文件\可以编辑目录下的文件, 不能使用ls ls -l
20.将root密码修改为"bgx123"
passwd root
bgx123
bgx123