【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.

各自的权限分数表如下:

rwx
421

举例:

如果我想修改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为后缀。

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值