失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【Linux后端开发必问】操作系统系列(Linux常用命令 文件权限修改 静态与动态库的制作)

【Linux后端开发必问】操作系统系列(Linux常用命令 文件权限修改 静态与动态库的制作)

时间:2020-10-03 19:21:21

相关推荐

【Linux后端开发必问】操作系统系列(Linux常用命令 文件权限修改 静态与动态库的制作)

目录

一、说说常用的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常用命令 文件权限修改 静态与动态库的制作)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。