Linux常用指令—面试常考

1.查看进程运行状态 ps -aux | grep PID

2.显示所有进程 ps -A

3.查看内存使用情况:free -m

4.查看进程运行状态、内存使用情况:top

5.tar解压文件参数:

五选一必选参数:-x 解压;-t 查看内容;-r 向压缩归档文件末尾追加文件 -u更新原压缩包中的文件 -c 建立压缩档案;

可选参数:-z 有gzip属性;-j 有bz2属性;-Z 有compress属性;-v:显示所有过程;-0:将文件解开到标准输出;

6.文件权限怎么修改?利用chmod(change mode)指令

共有三种权限read 权值4;write权值2;execute权值1;共有三种对象owner、group、others

赋值时对方式三个一组进行累加,比如 chmod 770 test.c   770中每位就是对对应对象的权限方式累加

7.其他一些常用的Linux命令:

切换当前目录:cd

查看当前文件与目录:ls

用于分析一行信息,若有我们所要信息就将该行显示出来,常与管道命令一起使用 grep

复制命令:cp

移动文件或文件夹命令:mv

删除文件或文件夹名了:rm

查看进程情况:ps

向进程发送终止信号:kill

对文件进行打包:tar

查看文件内容:cat

查看操作系统信息(进程、CPU利用率、内存信息):top

用于显示工作目录:pwd

8.以root权限运行某个程序:

输入以下两条指令:sudo chown root app       sudo chmod u+s app

9.静态库和动态库的制作和使用:

静态库的制作:gcc hello.c -c  这样就生成了libhello.a静态库

静态库的使用:gcc main.c -lhello -o staticLibrary 第三个参数-lhello代表静态库,去头去尾去掉libhello.a中的lib和.a,再加上-l 最后一个参数是要生成的文件的目标名

动态库的制作:gcc -shared -fpic hello.c -o libhello.so -shared

动态库的使用:gcc main.c -lhello -L ./ -o dynamicDepot 第三个参数和第五个参数同上,新加-L 告诉gcc编译器从-L指定路径去去找静态库 ./ 是指当前路径的意思

区别:静态库代码装载的速度很快,执行的速度略比动态库块;

动态库更省内存,可执行文件体积比静态库小很多;

静态库是在编译时加载,动态库是在运行时加载;

生成的静态链接库,windows下以.lib 为后缀 Linux下以.a为后缀;生成的动态链接库,windows下以.dll为后缀,LInux下以.so为后缀;

10.常见的GDB调试指令,什么是条件断点,多进程下如何调试

GDB调试的是可执行文件,在gcc编译时加入-g,告诉gcc在编译时加入调试信息;

gcc -g test.c -o test

GDB命令格式:

quit:退出gdb,结束调试

list:查看程序源码

list 5,10:显示5到10行代码;list test.c:5,10:显示源文件5到10行代码 list get_sum显示get_sum这个函数附近的代码 list test.c get_sum 显示这个文件中这个函数周围代码

reverse-search:字符串 用来从当前行向前查找第一个匹配的字符串

run:程序开始执行

help list/all:查看帮助信息

break:设置断点

break 7:在第七行设置断点

break get_sum:以函数名设置断点

break 行号或函数名 if 条件 :以条件表达式设置断点

watch 条件表达式:条件表达式发生变化时程序就会停下来

next:继续执行下一条语句,会把函数当作一条语句执行

step:继续执行下一条语句,会跟踪进入函数,一次一条的执行函数内的代码

条件断点:break if 条件   以条件表达式设置断点

多进程下调试:用set follow-fork-mode child 调试子进程

set follo-fork-mode parent 调试父进程

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值