1、请简要描述一下Linux文件系统的层级结构,包括不同目录的作用和功能。
Linux的文件系统结构是一个倒插树结构,所有的文件都从根目录出发。
2、find指令的用途
find 查找的路径 -name 文件名 ----->在指定路径下,以文件名为条件查找文件
find -name 文件名 ----->在当前路径下,查找文件
find -name *.c ---->find可以进行模糊查找,不建议使用
3、如何使用tar指令,对文件进行压缩和解压缩,压缩工具对应的参数
tar -cvf 打包后的文件名.tar 打包的文件
-v:显示指令执行的过程
-c:实现打包功能的
-f:file -f参数后面一定要跟文件名tar -cvjf 文件名.tar.bz2 要归档压缩的文件
tar -cvJf 文件名.tar.xz 要归档压缩的文件
tar -cvzf 文件名.tar.gz 要归档压缩的文件
4、链接文件的创建,软连接文件和硬链接文件的区别,软链接文件的注意事项
1、硬链接文件和源文件有相同的inode号(ls -i)2、硬链接文件的修改会影响到源文件,源文件的修改也会影响硬链接文件3、ls显示的文件的描述信息中链接文件的个数,指的是硬链接文件的个数4、只有硬链接文件个数为0时,文件才被删除1、创建软链接文件时,使用绝对路径2、软链接文件可以理解为快捷方式3、软链接文件的文件类型是l,他不会增加文件描述中的链接文件个数4、软链接文件,如果源文件被删除,链接会断开,软链接文件会失效,如果重新创建一个同名的源文件,软链接文件会重新链接,并且链接到新创建的文件5、软链接文件的修改会影响到源文件,源文件的修改也会影响软链接文件6、wins下不支持软链接文件,Linux下的压缩包不要放到主机下解压
5、如何修改文件的所属用户
sudo chown root 1.c ---->把1.c的所属用户改成root
sudo chown root: 1.c ---->把1.c的所属用户和所属组用户改为root
sudo chown :root 1.c ---->把1.c的所属组用户改为root
sudo chown ubuntu:root 1.c ---->把1.c的所属用户改为ubuntu,所属组用户改为root
6、管道符如何使用,有什么功能
指令1 | 指令2 | ···· | 指令n
把前一条指令的输出,当作后一条指令的输入
lolcat软件,需要使用管道符看到现象
ls ~ | lolcat ----->把ls ~的结果进行渐变色的输出
7、在线安装软件和离线安装软件的指令,dpkg的全称
在线安装:sudo apt-get install 软件名
离线安装:sudo dpkg -i 软件包
dpkg---->debian package
8、test指令相关的参数
处理数据:-eq:相等-ne:不相等-ge:大于等于-gt:大于-le:小于等于-lt:小于-a:在test指令中表示逻辑与关系-o:在test指令中表示逻辑或关系
处理字符串:-z string: 判断字符串为空-n string: 判断字符串非空
处理文件:-b FILE:存在且为块设备文件-c FILE:存在且为字符设备文件-e FILE:文件存在-f FILE:文件存在且为普通文件-d FILE:文件存在且为目录文件-s FILE:文件存在且不为空-S FILE:文件存在且为套接字文件-h/-L FILE:文件存在且为链接文件-x FILE:文件是否有可执行权限
9、shell中如何定义和使用变量?
定义变量:变量名=变量的值变量名='变量的值'变量名="变量的值"
使用变量:$变量名 ---->拿到变量的值${变量名} ---->正确表明变量名的范围,建议都加${}
10、shell中select···in语句的使用
select 变量名 in 选项列表
do循环体
done
11、变量的’'赋值和""赋值的区别
' '一般用于,变量的值中间有空格时
' '内不能识别$变量名,不会展开变量,只会当成字符串处理
""一般用于,使用一个变量给另一个变量拼接赋值
12、什么是 Makefile?
Makefile是一个名为Makefile的工程管理文件
Makefile的文件名,可以是大写的Makefile也可以是小写的makefile,一般使用大写的 Makefile
如果大写的Makefile和小写的makefile同时存在默认,执行小写的makefile
Makefile会根据文件的时间戳,决定是否需要重新编译。
13、Makefile 的基本结构是什么样的?
目标文件:依赖文件fun:main.o fun.ogcc main.o fun.o -o funmain.o:main.cgcc -c main.c -o main.ofun.o:fun.cgcc -c fun.c -o fun.o
14、如何指定一个规则的依赖关系?一条规则有哪些要求
目标文件:依赖文件
一条规则可以有多个目标,一个目标可以有多个依赖
一条规则必须有一个目标,一个目标可以没有依赖,只执行指令
一个目标可以不执行指令,只描述依赖关系
15、如何指定伪目标(phony target)?
.PHONY:clean
clean: #完成清空文件的指令rm $(OBJs) $(EXE)
16、Makefile如何决定程序是否需要重新编译?
在 Makefile 中,如果目标文件的任意一个依赖对象的时间戳比目标文件的时间戳更晚,说明目标文件需要重新编译。