一、基础
1.1 什么是绝对路径,什么是相对路径(2 分)
绝对路径:一般以/开始的都是绝对路径
相对路径:相对于当前路径来说的路径
1.2 简述命令执行的流程(2 分)
①判断命令是否通过绝对路径执行;
②判断命令是否存在alias别名;
③判断命令是内置命令还是外置命令;
④内置bash直接执行,外置命令判断是否存在缓存;
⑤通过$PATH进行查找,有执行,无报错command not found。
1.3 简述软连接与硬连接的区别(2 分)
①软链接通过ln -s创建,硬链接通过ln创建;
②软链接与源文件是不同的inode号,硬链接与源文件是不同的inode号;
③软链接相当于快捷方式,硬链接相当于副本、备份;
④删除源文件,软链接失效,删除源文件,对硬链接无影响;
⑤目录可以创建软链接,目录不能创建硬链接;
⑥软链接支持跨越分区系统,硬链接不支持跨越分区系统。
1.4 创建目录/old/boy/(2 分)
mkdir /old/boy/ -p
1.5 使用一条命令在/old/boy/目录下创建 bgx1.txt、bgx2.txt、bgx3.txt 三个文件(2 分)
touch /old/boy/bgx{1..3}.txt
1.6 将/old/boy/目录下所有内容复制到/root/目录下 (2 分)
cp -r /old/boy/* /root/
1.7 删除/root 下所有 a 开头的文件及目录(2 分)
rm -rf /root/a*
1.8 在/tmp/目录下面创建一个 etc 的软连接 etc-test (2 分)
ln -s /etc/ /tmp/etc-test
1.9 写出 20 个学过的命令及含义(20 分)
1.10 以下目录的作用(8 分)
bin boot dev etc home lib mnt opt proc root run sbin tmp usr var
目录 | 作用 |
---|---|
bin | 普通用户存放二进制命令的目录 |
boot | 系统启动目录 |
dev | 设备目录 |
etc | 系统配置文件的目录 |
home | 普通用户的家目录 |
lib | 库文件 |
mnt | 挂载点 |
opt | 第三方软件的默认安装目录 |
proc | 反映进程的实时变化 |
root | 超级用户的家目录 |
run | 存放进程产生的pid和lock文件的目录 |
sbin | 存放超级用户二进制命令的目录 |
tmp | 临时文件的目录 |
usr | 系统目录,相当于Windows系统下的C:\Windows |
var | 可变文件的目录 |
二、awk
2.1 显示 1.txt 文件第 3 到第 10 行的内容?(2 分)
2.2 取出 IP 地址(2 分)
2.3 写一个文件,文件内容如下
cat >>test.txt<<EOF
server {
lisTEN 80;
server_nAme docs.xuliangwei.com;
root /code/dOcs
index INDEX.html;
}
EOF
2.3.1 过滤 docs.xuliangwei.com 这段关键字(2 分)
grep " docs.xuliangwei.com" test.txt
2.3.2 同时过滤出 root 和 index 的行,不区分大小写 (2 分)
grep -Ei "root|index" test.txt
2.3.3 过滤 index,区分大小写(2 分)
awk "/index/" test.txt
2.3.4 过滤出带"O"的行,不区分大小写(2 分)
grep -i "O" test.txt
2.3.5 过滤出不带";"的行(2 分)
grep -v ";" test..txt
2.4 将"web3_access.log"上传至你的 linux 服务器
rz
2.4.1 统计出该文件 IP 地址(第一列)出现的次数,并按正序对其进行排序(2 分)
awk '{print 9}' "web3_access.log | sort |uniq -c |sort -nr
2.4.3 过滤出所有状态返回码是 200 的行,并将这些 返回码为 200 行的全部替换成 300(2 分)
grep "200" "web3_access.log | sed "s#200#300#g"
2.5 使用 hostnamectl 查看当前系统信息
[root@test-200 /home]# hostnamectl
Static hostname: test-200
Icon name: computer-vm
Chassis: vm
Machine ID: 955d9cf9777d49748690808a0b38096b
Boot ID: 9565d1bd772543beb49d178479e7c94f
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
PE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-957.el7.x86_64
Architecture: x86-64
2.5.1 取出 kernel 内核版本信息(2 分)
hostnamectl | grep "kernel"
2.5.2 取出系统名称(2 分)
hostnamectl | awk NR==1
2.5.3 取出系统版本信息,只显示"linux 7"(2 分)
hostnamectl | awk NR==7 |awk -F ":" '{print 2}'
三、用户与权限
3.1 在 Linux 系统中,哪个文件保存着用户信息(2 分)B
A:/etc/Profile B:/etc/passwd C:/usr/bin/env D:/boot
3.2 一个用户想要修改 dir 目录下的 file 文件,他需 要对 dir 目录以及 file 文件有什么权限(2 分)
A:file 的写权限和 dir 目录(以及一直向上到/目 录)的执行权限
B:只需要 file 的写权限
C:只需 file 的读和写权限
D:file 的写权限和 dir 目录(以及一直向上到/目 录)的写权限
3.3 默认情况下管理员创建了一个用户,就会在 (B)目录下创建一个用户主目录(2 分)
A:/usr B:/home C:/root D:/etc
3.4 为脚本程序指定执行权限的命令参数是(2 分) A
A:chmod +x filename.sh B:chown +x filename.sh
C:chmod +w filename.sh D:chown +r filename.sh
3.5 如果执行命令 # chmod 746 file.txt , 那么该文件 的权限是?(2 分) A
A:rwxr--rw- B:rw-r--r-- C:–xr—rwx D:jrwxr—r—
3.6 某文件的权限为:drw--r--r--,用数值形式表示 该权限,则该八进制数为(644),该文件属性是(目录) (2 分)
3.7 某个服务器有 a.sh 脚本,用户权限为 644,需 要执行什么命令,才可以执行./a.sh 命令(2 分)
chmod 755 a.sh
3.8 唯一标识每一个用户的是用户的uid_和_username(2 分)
3.9 将以下权限翻译成数字,将数字权限用字母表 示(14 分)
rw-r-xr-- 654 rw-r--r-- 644 rwx--x--x 711 rw------- 600 rwxr--r-- 744 rw-rw-r-- 664
751 rwxr-x--x 771 rwxrwx--x 632 rw-rwx-w- 644 rw-r--r-- 551 r-xr-x--x 622 rw--w--w- 746 rwxr--rw-755 rwxr-xr-x
3.10 设置/home/user1/test 文件权限为所有者可读可 写可执行,所有组可读可写,其他所有账户可读, 并将该文件的所有者和所有组都修改为 root(3 分)
chmod 764 /home/user1/test
chown root.root /home/user1/test
3.11 当用户 zabbix 对/testdir 目录有写和执行权限时,该目录下的只读文件file1是否可修改和删除?(3 分)
可以修改,可以删除
3.12 把 jacky 的密码设置为 123(3 分)
echo "123" | passwd --stdin jacky
3.13 使用"ls -l /"以长格式查看根目录,写出引号内 容所代表的详细含义(4 分)
“dr-xr-xr-x.” 5 “root root” 4096 May 16 01:36 boot
d表示boot是目录
r-xr-xr-x表示555,表示boot的属主、属组以及其他用户对boot的权限都是可读可执行
第一个root表示boot的属主是root
第二个root表示boot的属组是root
3.14 当用户 mysql 对/data/DB 目录无读权限,但是 拥有写和执行权限,意味着能做哪些操作,无法做 哪些操作?(3 分)
不能进入目录,可以修改目录里的文件
四、进阶
4.1 如果某一天你误操作了"rm -rf ",会发生哪些 情况(3 分)
当前目录下的所有 内容都会被删除
4.2 用命令行更改 config.txt 文件,把里面所有的 "name"更改为"address" (3 分)
sed "s#name#address#g" config.txt
4.3 用 awk 获取文件中第三行的倒数第二列字段(2 分)
awk 'NR=3 {print " file.txt > file.txt
4.5 删除/tmp 目录下所有 a 开头的文件(3 分)
rm -f /tmp/a
五、翻译(每个 2 分)
5.1 [root@test-200 ~]# cd /rot -bash: cd: /rot: No such file or directory
没有这样的文件或者目录
5.2 [root@test-200 ~]# mdkir a -bash: mdkir: command not found
命令没有找到
5.3 [root@test-200 ~]# mkdir a mkdir: cannot create directory ‘a’: File exists
不能创建目录a,已经存在
5.4 [root@test-200 ~]# rm a rm: cannot remove ‘a’: Is a directory
不能删除a,这是一个目录
5.5 [root@test-200 ~]# rm a.txt rm: remove regular empty file ‘a.txt’?
要删除空文件a吗
5.6 [root@test-200 ~]# cp /tmp/a.txt /root/a.txt cp: overwrite ‘/root/a.txt’?
覆盖 ‘/root/a.txt’吗
5.7 [root@test-200 ~]# id www id: www: no such user
没有www这样的用户
5.8 [test@test-200 /]$ cd /root bash: cd: /root: Permission denied
权限不足
5.9 [root@test-200 /tmp]# cp -q a.txt c.txt cp: invalid option -- 'q'
cp没有q这样的参数选项
5.10 [root@test-200 /home]# useradd test useradd: user 'test' already exists
用户test已经存在