目录
一、说说常用的Linux命令
二、文件权限如何修改
三、静态库和动态库的制作
1、静态库
2、动态库的制作
3、两者优势对比
一、说说常用的Linux命令
1、cd命令:用于切换当前目录;
2、ls命令:查看当前文件与目录;
3、grep命令:该命令常用于分析一行信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工。
可以跟ps命令一块混用
查看进程运行状态的指令:ps命令:ps -aux | grep PID 用来查看某进程PID状态。
4、cp命令:复制;
5、mv命令:移动文件或者文件夹;
6、rm命令:删除文件或文件夹,常和-rf配合使用:rm -rf 文件(永久删除文件);
7、free命令:查看内存使用情况的命令 ,free -m;
8、kill命令:向进程发送终止信号;
9、tar命令:对文件进行打包
五个命令必选一个:
-c:建立压缩档案
-x:解压
-t :查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
10、cat命令:查看文件内容,与less、more功能相似;
11、top命令:查看进程运行状态、查看内存使用情况;
12、pwd命令:显示当前的层层目录。
二、文件权限如何修改
Linux文件的基本权限就9个,分别是ower/group/others三种身份,他们每种身份都有各自的read/write/execute权限。
修改权限的指令为:chmod.
各自的权限分数表如下:
举例:
如果我想修改test.c文件为:ower和group都设置为可读可写可执行,而others设置为没有任何权限:
使用命令为:chmod 770 test.c//就设置test.c文件的权限为770。
三、静态库和动态库的制作
1、静态库
第一步:静态库的制作:
首先生成一个.o文件
命令:gcc test.c -c//这样就生成一个test.o目标文件
然后生成libtest.a静态库
命令:ar rcs libtest.a test.o//生成libtest.a静态库
第二步:静态库的使用:
gcc main.c libtest.a -o main
直接运行 ./main
到时候只需要给到对方main.c 、libtest.a和sub.h就可以了。
2、动态库的制作
第一步:动态库的制作
gcc -shared -fpic hello.c -o libhello.so
解释:
-shared 指定生成动态库
-fpic 作用于编译阶段,在生成目标文件时就得使用该选项,可生成与位置无关的代码
第二步:动态库的使用
gcc main.c -lhello -L ./ -o main
注释:
main.c 主函数
-lhello 是我们生成的.so文件砍头(lib),去尾(.so),前面加-l
-L 是告诉编译器,要先从它后面的位置去找动态库
./ 这个当前目录下
3、两者优势对比
1、静态库代码装载速度快,执行速度比动态库块;
2、动态库更加节省内存,可执行文件体积比静态库小很多;
3、静态库是在编译时加载,动态库是在运行时加载;
4、生成的静态链接库,Windows下以.lib为后缀,Linux下以.a为后缀。
5、生成的动态连接库,Windows下以.dll为后缀,Linux下以.so为后缀。
如果觉得《【Linux后端开发必问】操作系统系列(Linux常用命令 文件权限修改 静态与动态库的制作)》对你有帮助,请点赞、收藏,并留下你的观点哦!