Appearance
一,特殊符号解释(共22分)
bash
|:管道符。或者
>:清空追加重定向(1:正确、2:错误、&:正确或者错误都重定向)
>>:追加输出重定向(1:正确、2:错误、&:正确或者错误都重定向)
<:标准输入重定向
<<:标准追加输入重定向
~:家目录
$():优先执行还有``
$:普通用户标识。正则中以...结尾
^:正则中以...开头
^$:匹配空行
*:任意,正则中匹配0到无限次
?:任意一个字符,正则中匹配0或1次
+:正则中匹配1到无限次
&&:并且,前面的命令执行成功才执行后面的
||:或者,前面的命令执行失败才执行后面的
.(点):当前目录。正则中表示任意一个字符
..(双点):上级路径
[0-9]:匹配0-9任意数字
[A-F]:匹配A-F任意大写字母
[^a-z]:不匹配a-z小写字母
[!abc]:不匹配字母abc
{1..5}:1-5序列数
二,命令整体作用解释(共25分)
bash
find /data/ -type f -size +10M -size -100M:匹配/data/目录下大于10M并且小于100M的文件
grep -n:过滤字符显示行号
grep -w:精准匹配字符
grep -o:仅显示匹配内容
grep -l:显示过滤内容的文件名
grep -E:开启扩展正则
grep -i:忽略大小写
|xargs:将左侧命令结果转换成横向命令行格式
|xargs -i:将左侧命令结果传递到右侧{}占位符中
cp /root/yunjisuan.txt{,.bak}:文件备份
rpm -ivh:手动安装程序包,显示安装过程并以#显示进度
rpm -e:卸载程序
rpm -q:查看安装包
rpm -ql:查看软件安装路径
rpm -qf:通过命令路径查看所属程序包
rpm -qa:查看所有安装程序包
yum -y install:yum安装-y非交互式
yum -y remove:yum卸载,-y非交互式
yum history:yum历史操作记录
yum search:查看命令所属软件包
yum provides *bin/bash:查看命令bash所属软件包
wc -l:统计行数
df -h:以人性化可读方式查看挂载情况
-T:查看挂载类型
-i:查看inode号使用情况
三,特殊路径解答(共22分)
- yum仓库的安装目录绝对路径:/etc/yum.repos.d/
- 光盘设备的绝对路径(非挂载目录):/dev/sr0
- /root目录的作用:超级用户家目录
- /home目录的作用:普通用户家目录宿主目录
- /boot目录的作用:启动程序文件系统
- /dev目录的作用:设备文件系统
- /etc目录的作用:全局配置文件系统
- /usr目录的作用:第三方软件安装位置
- /var目录的作用:可变文件和临时文件存储
- 保存用户账户信息的两个文件绝对路径:/etc/passwd,/etc/shadow
- 保存组账户信息的两个文件的绝对路径:/etc/group,/etc/gshadow
四,命令练习(共26分)
1、已知根下的data目录里有若干文件和目录。将所有小于50M,文件名中包含yunjisuan的所有文件,
移动到/tmp目录下。(一条命令实现,至少两种方法)
bash
第一种:find /data/ -type f -size -50M -name "*yunjisuan*" -exec mv {} /tmp/ \;
第二种:mv `find /data/ -type f -size -50M -name "*yunjisuan*"` /tmp
第三种:find /data/ -type f -size -50M -name "*yunjisuan*" | xargs -I{} mv {} /tmp
2、用编译的方式安装apache的四个步骤
源码包为:httpd-2.2.17.tar.gz(存放于当前目录下)
第一步:将源码包解压到/usr/src目录下
用命令作答:
bash
tar xvf httpd-2.2.17.tar.gz -C /usr/src
第二步:预配置apache的安装目录为/usr/local/apache(目的是设置软件的安装目录及各个
待安装的功能模块,这里我们只设置路径)
用命令作答:
bash
/usr/src/httpd-2.2.17/configure --prefix=/usr/local/apache && echo $?
第三步:源码包开始编译文件(刚开发出来的文件,是人类能看懂的,编译的作用是转换成二
进制格式,如此计算机才能看懂)
用命令作答:
bash
make -j$(nproc) && echo $?
第四步:源码包开始安装
用命令作答:
bash
make install
3、创建一个用户叫做yunjisuan,不创建它的家目录,并且不能登陆Linux
bash
useradd -Ms /sbin/nolong yunjisuan
4、创建用户user1,user2,use3,创建user3的时候指定附加组user1,创建user3后,将user2的附加组指
定成user3
bash
# 创建用户user1
useradd user1
# 创建用户user2
useradd user2
# 创建用户user3并指定附加组user1
useradd -G user1 user3
# 将user2的附加组指定user3
gpasswd -a user2 user3 或 usermod -aG user3 user2
5、创建一个用户tom指定用户有效期是30天
bash
useradd -e 30day tom
6、企业面试题:请问如下登陆故障的原理及解决方法
bash
bash-4.2#
bash-4.2#
bash-4.2#
①请用文字的方式清晰回答故障的发生原因(原理):
bash
用户家目录基础配置信息被删除
②请用文字或命令的方式解答此类故障如何恢复(关键的目录必须写出绝对路径):
bash
将/etc/skel中用户配置模板文件复制到用户工作目录下
cp /etc/skel/.bash* /home/test && bash
7、将当前目录下的data子目录整体打包,但是排除一个叫做yunjisuan.txt的文件。
bash
tar -zxvf data.tar.gz --exclude="./data/yunjisuan.txt" data
五、实验题(共5分)
构建一个本地yum源,将光盘挂载到/media/cdrom。写出构建过程和yum源文件
①构建过程(3分)
bash
1、创建挂载目录:mkdir -p /media/cdrom
2、挂载光盘:mount /dev/sr0 /media/cdrom
3、查看挂载情况:df -Th
4、备份旧yum源文件:mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d.*.repo /etc/yum.repos.d/bak
5、创建新的yum源文件
6、清除就缓存并生成新的:dnf clean all && dnf makecache
②yum源文件内容(2分)
bash
[media]
name=local
baseuel=file:///media/cdrom
gpgcheck=0
enabled=1
`