练习题(10)
awk相关
1.查看/etc/passwd文件里的第一行,将其倒置输出,要求输出结果为“/bin/bash:x:0:0:root:/root:root”
head -1 /etc/passwd | awk -F ":" '{print 2":"4":"6":"$1}'
2.只显示/etc/passwd文件的第五行
sed -n "5p" /etc/passwd
3.使用ifconfig查看网卡信息,仅筛选出IP地址
ifconfig eth0 | grep "inet " | awk '{print 2}'
ifconfig eth0 | awk '/inet / {print $2}'
4.将access.log"上传至你的linux服务器
>(1)统计出该文件IP地址出现的次数,并按正序对其进行排序
awk '{print$1}' access.log |sort -n|uniq
>(2)统计该文件内HTTP状态返回码出现的次数(例如200,404,403,在第九列),并按照倒序进行排序
awk '{print$9}' access.log |sort -r |uniq -c
>(3)过滤出所有状态返回码是200的行,并将这些返回码为200行的全部替换成300
awk '{print$9}' access.log |grep "200"| sed 's#200#300#g'
5.匹配/etc/passwd里包含root关键字的行(要求至少两种方法,分别使用awk和grep)
grep "root" /etc/passwd
awk 'root' /etc/passwd
6.以“:”为分隔符,取出/etc/passwd第一行的最后一列的内容
awk -F ":" 'NR==1{print $NF}' /etc/passwd
7.取出以“:”为分隔符,第三列(用户UID)以0结尾的
awk -F ":" '/ {print 3}' /etc/passwd |grep "0$"
8.使用hostnamectl查看当前系统信息,取出kernel内核版本信息(如3.10.0-693.2.2.el7.x86_64)
ostnamectl | awk ' NR==9{print $3}'
9.使用"netstat -lntp"查看当前linux服务器开放的网络端口,过滤出远程连接服务关键字"sshd",取出该服务所占用的端口号"22"
hostnamectl |awk -F ":" '{print$2}'|grep "^ Linux"
10.用awk获取/etc/passwd文件中第三行的倒数第二列字段
netstat -lntp |grep "sshd"| awk -F " " '{print)#\2#g'
用户权限相关
1.对名为fido的文件用chmod 551 fido进行了修改,则它的权限信息是
C
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组有读写权限,其他人无权限
cp /etc/fstab /var/tmp/
useradd wangcai
groupadd sysadnubs
chmod 660 /var/tmp/fstab
8.创建下面的用户、组和组成员关系,用户natasha,使用admins作为附属组,用户harry,也使用admins作为附属组,用户sh,不可交互登录系统,natasha,harry,sh密码都是centos
groupadd admins
useradd natasha -G admins
useradd harry -G admins
useradd sh -s /sbin/nologin
echo“centos”> |passwd --stdin natasha
echo“centos”> |passwd --stdin harry
echo“centos”> |passwd --stdin sh
9.修改jack的uid为666,用户名改为jacky
usermod jack -u 666 -l jacky
10.把jacky的密码设置为123
echo“123”> |passwd --stdin jacky
11.切换控制台,用jacky帐户登录系统
su - jacky
12.将rose加入到root组,用命令查看是否加入成功,查看/etc/group中root组中有无rose
useradd rose -G root
id rose
grep "root" /etc/group
13.以root身份建一个目录/test,查看这个目录的默认权限是?
mkdir /test
ll -d /test
755
14.进入/test目录中,建一个文件abc,查看其默认的权限为?
mkdir /test
ll -d /test
755
15.转换为普通用户jacky登录,看能否进入/test目录,能否在里面创建文件,能否用vim编辑abc文件并保存退出
su - jacky
>16.新建一个用户oldwoman,密码123,授予该用户可以使用ls命令操作任何目录,切换到该用户验证权限
useradd oldwoman
echo“123”> |passwd --stdin oldwoman
visudo
oldwoman ALL=(ALL) /usr/bin/ls
sudo -c
17.将oldwoman用户的权限改为可以使用所有命令,并切换至该用户创建文件oldwoman.txt验证
visudo
oldwoman ALL=(ALL) ALL
18.使用"ls -l /"以长格式查看根目录,写出每一列所代表的含
-rw-r--r--. 1 root root 25 Aug 1 16:39 kl
文件类型 权限 : 用户 所属组 其他人 用户 所属组 日子 月份 被链接几次 大小 名称
19.当用户mysql对/data/DB目录无读权限,但是拥有写和执行权限,意味着能做哪些操作,无法做哪些操作?
能进入目录\ 能创建新文件\ 可以编辑目录下的文件,不能使用ls ls -l
20.将root密码修改为"bgx123"
echo “bgx123" |passwd --stdin root