第二次笔试总结

一、基础

1.1  什么是绝对路径,什么是相对路径 

相对路径:从当前目录开始的就是相对路径

绝对路径:从根开始的路径就是绝对路径           

1.2  简述命令执行的流程   

判断命令是否是绝对路径

判断命令是否有别名

判断命令是内置命令还是外置命令

bash的内部命令直接执行,外部命令检查是否有缓存

通过$PATH变量查找命令,有命令执行,没有命令报错'command not found                         

1.3  简述软连接与硬连接的区别 

ln 命令创建硬链接;ln -s 创建软链接

目录不能创建硬链接,硬链接不能跨越分区

目录软链接特别常用,软链接支持跨分区

硬链接文件与源文件inode相同,软链接文件与源文件inode不同

删除软链接对源文件及硬链接文件无影响

删除硬链接对源文件及链接文件无影响

删除源文件,对硬链接无影响,会导致软链接失效

删除源文件及其所有硬链接,文件会被真正删除                   

1.4  创建目录/old/boy/ 

                      mkdir -p /old/boy   

1.5使用一条命令在/old/boy/目录下创建bgx1.txt、bgx2.txt、bgx3.txt三个文件 

                  touch /old/boy/bgx{1..3}.txt

1.6将/old/boy/目录下所有内容复制到/root/目录下       

              cp -a /old/boy/* /root/                                           

1.7 删除/root 下所有 a 开头的文件及目录       

rm -fr /root/a*

1.8 在/tmp/目录下面创建一个 etc 的软连接 etc-test 

                  ln -s /etc /tmp/etc-test                                       

1.9  写出 20 个学过的命令及含义   

awk---取列,取行

grep---筛选,匹配

sed---替换,取行

mkdir---创建目录

touch---创建文件

ln---创建硬链接

ls---查看文件

stat---查看文件的详细属性信息

cat---查看文件内容

less---查看大文件内容

more---查看大文件内容,显示百分比

head---查看文件前几行,默认十行

tail---查看文件后几行,默认十行

file---查看文件类型

tree---以树形结构显示目录和文件mv---移动

cp---拷贝

rm---删除

mv---移动

sort---排序

uniq---去重,与sort组合使用

wc---统计

xargs---将多行排列,分组

cut ---取字符串

cd---切换目录

Pwd---显示当前路径

chmod---修改文件权限

chattr---改变文件权限

lsattr---查看文件是否加锁

chown --设置属主属组

chgrp --设置属组

useradd---新建用户

usermod---修改用户信息

userdel---删除用户

groupadd --添加用户组

groupmod --修改用户组

groupdel --删除用户组

gpasswd --用户组设置密码

passwd---修改密码

mkpasswd --生成随机密码

id---查看用户是否存在

su---切换用户

chage---修改密码属性             

1.10  以下目录的作用                                 

/bin:    二进制可执行文件的保存目录,普通用户命令保存目录(软链接,指向/usr/bin)

/sbin:    管理员可用的系统相关命令存储目录(软链接,指向/usr/sbin)

/lib:    系统启动与运行时所需的库文件(软链接,指向/usr/lib)

/lib64:系统启动与运行时所需的64库库文件(软链接,指向/usr/lib64)

/usr:          系统文件目录(第二层次目录)

/boot:  存放系统启动的相关文件

/dev:  设备文件的保存目录,比如硬盘分区 光驱等

/etc:    配置文件的保存目录

/home:    普通用户的家目录

/media:  可移动媒体的挂载点

/mnt:    临时挂载点

/opt:        第三方软件程序存储目录

/srv:      存储为用户提供服务的数据

/proc:    存放系统正在运行的程序 进程信息

/root :    管理员家目录

/run:      正在运行的程序的pid和锁文件存储目录

/sys:      虚拟的文件系统,存放进程和内核信息

/tmp:      临时文件存储目录

/var:        存放系统执行过程中经常变化的文件,如日志和邮件等         

二、awk

2.1 显示 1.txt 文件第 3 到第 10 行的内容? 

    awk 'NR==3,NR==10' 1.txt

2.2  取出 IP 地址           

            awk 'NR==3,NR==10' 1.txt

2.3  写一个文件,文件内容如下

cat >>test.txt<

server {

    lisTEN 80;

      server_nAme docs.xuliangwei.com;

  root /code/dOcs 

index INDEX.html;

}

EOF

2.3.1 过滤 docs.xuliangwei.com 这段关键字

grep 'docs' test.txt

2.3.2 同时过滤出 root 和 index 的行,不区分大小写

grep -Ei 'root|index' test.txt

2.3.3 过滤 index,区分大小写

grep -i 'index' test.txt

2.3.4 过滤出带"O"的行,不区分大小写

grep -i 'o' test.txt

2.3.5 过滤出不带";"的行

grep -v ';' test.txt

3.4 将"web3_access.log"上传至你的 linux 服务器

2.4.1 统计出该文件 IP 地址(第一列)出现的次数,并按正序对其进行排序

awk '{print $1}' access.log | sort | uniq -c | sort -n

2.4.2统计该文件内HTTP状态返回码出现的次数(例如200,404,403,在第九列),并按照倒序进行排序

awk '{print $9}' access.log | sort | uniq -c | sort -rn

2.4.3 过滤出所有状态返回码是 200 的行,并将这些返回码为 200行的全部替换成 300

awk '{print $9}' access.log | grep '200' | sed 's#200#300#g'

3.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.e17.x86_64

Architecture: x86-64

2.5.1 取出 kernel 内核版本信息

hostnamectl | grep 'Kernel' | awk '{print $3}'

2.5.2 取出系统名称()

hostnamectl | grep 'Operating' | awk '{print 3,4}'

2.5.3 取出系统版本信息,只显示"linux 7"

hostnamectl | grep 'Operating' | awk '{print 4,5}'

三、用户与权限       

3.1 在 Linux 系统中,哪个文件保存着用户信息  B

A:/etc/Profile               

B:/etc/passwd

C:/usr/bin/env           

D:/boot

3.2  一个用户想要修改 dir 目录下的 file 文件,他需要对 dir 目录以及 file 文件有什么权限A

A:file 的写权限和 dir 目录(以及一直向上到/目录)的执行权限

B:只需要 file 的写权限 

C:只需 file 的读和写权限     

D:file 的写权限和 dir 目录(以及一直向上到/目录)的写权限   

3.3默认情况下管理员创建了一个用户,就会在()目录下创建一个用户主目录 B 

A:/usr         

B:/home   

C:/root     

D:/etc 

3.4 为脚本程序指定执行权限的命令参数是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 ,  那么该文件的权限是? A

A:rwxr--rw-             

B:rw-r--r--         

C:–xr—rwx             

D:jrwxr—r—

3.6某文件的权限为:drw--r--r--,用数值形式表示该权限,则该八进制数为(),该文件属性是()

3.7某个服务器有a.sh脚本,用户权限为644,需要执行什么命令,才可以执行./a.sh 命令

chmod a+x a.sh

3.8  唯一标识每一个用户的是用户的uid_和_id

3.9  将以下权限翻译成数字,将数字权限用字母表

rw-r-xr-- (654) rw-r--r--(644)  rwx--x--x(711) rw------- (611)  rwxr--r--(744)  rw-rw-r--(664)

751(rwx r-x --x)  771(rwx rwx --x)  632(rw- -wx -w-)  644(rw- r-- r--)

551(r-x r-x --x)  622(rw- -w- -w-)  746(rwx r-- rw-)  755(rwx r-x r-x)

3.10设置/home/user1/test文件权限为所有者可读可写可执行,所有组可读可写,其他所有账户可读,并将该文件的所有者和所有组都修改为 root

chown root.root /home/user1/test

chmod 764 /home/user1/test

3.11  当用户 zabbix 对/testdir目录有写和执行权限时,该目录下的只读文件file1是否可修改和删除?

可改可删

3.12  把 jacky 的密码设置为 123 

echo '123' | passwd --stdin jacky

3.13  使用"ls -l /"以长格式查看根目录,写出引号内容所代表的详细含义

“dr-xr-xr-x.” 5 “root root” 4096 May 16 01:36 boot

文件类型信息

文件权限信息

文件硬链接数

文件所属用户

文件所属组用户(属组)

文件容量大小

文件修改的时间信息

文件名称信息

3.14当用户mysql对/data/DB目录无读权限,但是拥有写和执行权限,意味着能做哪些操作,无法做哪些操作?

不能查看目录可以进入目录,可以创建文件,可以修改删除目录下文件

四、进阶

4.1  如果某一天你误操作了"rm -rf *",会发生哪些情况

会删除当前目录下的所有文件

4.2  用命令行更改 config.txt 文件,把里面所有的 "name"更改为"address" 

sed 's#name#address#g' config.txt

4.3  用 awk 获取文件中第三行的倒数第二列字段

awk 'NR==2 {print $(NF-1)}'

4.4  删除 file.txt 文件中的空行(3 分)

grep -v '^$' file.txt > file1.txt

4.5  删除/tmp 目录下所有 a 开头的文件

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

没有mdkir这个命令

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’?

删除空的

5.6 [root@test-200 ~]# cp /tmp/a.txt /root/a.txt

cp: overwrite  ‘/root/a.txt’?

确定覆盖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'

没有q这个参数

5.10 [root@test-200 /home]# useradd test

useradd: user 'test' already exists

test用户存在

你可能感兴趣的:(第二次笔试总结)