Linux 复习笔记
来源:互联网 发布:好的漫画软件 编辑:程序博客网 时间:2024/06/06 02:35
Linux 常用基本命令:
文件 —— cp rm mv tail mv more find grep
进程 —— ps kill jobs top
管理 —— useradd userdel passwd shutdown init halt reboot
网络 —— ping tcpdump netstat
/*************************************************************************************/
目录结构:
/boot 系统启动所需文件、内核文件
/etc 系统配置
/bin 二进制可执行文件
/lib 库文件
/mnt 临时挂载点
/dev 设备文件
/home 普通用户家目录
/root 管理员目录
/proc 虚拟文件系统、进程信息
/*************************************************************************************/
文件类型:
- 普通文件
d 目录文件
l 符号链接(类似快捷方式)
b 块设备文件 / 二进制文件
c 字符设备文件
p 命名管道文件
s 套接字文件
改变文件权限 chmod r(4) w(2) x(1)
chmod u+x file
chmod 777 file
/*************************************************************************************/
gcc / g++:
工具集合的入口,其中会调用其他工具
编译 .c 文件
以 gcc 编译 -- 按照C语言编译(以 nm 查看逻辑地址偏移量,函数签名为函数名)
以 g++编译 -- 按照Cpp编译(函数签名为_Z3addii)
以 gcc 编译 -- 按照 Cpp 解析(产生链接错误,因为 gcc 不会主动链接c++标准库,需要手动指定)
以 g++ 编译 -- 按照 Cpp 解析,通过 ldd 命令查看所依赖的库
/* gcc不仅仅能编译 .c 文件,同时也能编译 .cpp 文件;但C与C++混合编译时应该使用 g++ 来链接,否则会因为C和C++的编译链接符号不同而链接失败 */
/*****************************************************1********************************/
gdb调试:
l 列出代码
s 进入函数
finish 跳出
n 执行下一步
b 设置断点
p/display 查看变量
x 查看内存
例:x/<n/f/u> <addr>
n表示显示内存的长度——即当前地址向后显示几个地址的长度;
f表示显示的格式——字符串s、十六进制x、十进制d;
u表示将多少字节当做一个值取出来——默认4byte,b单字节、h双字节、w四字节、g八字节
core调试(查看函数崩溃点 / 段错误)
ulimit -c ulimited 将core文件大小设为无限大
bt 查看函数调用栈
/*************************************************************************************/
库:
* 预先编译好的方法的集合
共享库(动态库):
gcc -shared -fPIC -o add.o
运行程序中动态装载库,调用其中的方法
静态库:
ar crv libadd.a add.o
编译完成后将库中包含的所有方法都嵌入程序中
通常将源文件编译成动态/静态库后,使同一个文件分别链接动态/静态库,链接静态库的文件大小会比链接静态库的文件要大一些(假设库中包含大量方法,且程序只调用了部分方法);
* 用nm查看可执行文件中的函数地址
// TODO
动态库 / 静态库的特点
链接 / 装载的过程
/*************************************************************************************/
进程 / 线程:
/*************************************************************************************/
网络:
- linux进程复习笔记
- linux命令复习笔记
- Linux 复习笔记1
- Linux 复习笔记
- Linux网络编程复习笔记
- Linux-shell基础复习笔记
- linux复习笔记-获取帮助
- linux学习考试复习笔记
- Linux复习笔记(四) -- Linux常用命令
- linux复习笔记 之 数据流重定向
- linux 复习笔记之常见压缩命令
- 大数据学习笔记:Linux基础复习
- 复习笔记
- 复习笔记
- Linux复习笔记(三) -- Linux系统目录架构
- Linux 复习
- linux 复习
- linux复习
- Atitit atttilax创造的新概念与模式 xaas xaaK
- (九)View的滑动事件
- java模拟斗地主发牌看牌
- jquery获取select选中值的文本,并赋值给另一个输入框
- eclipse导入项目,项目名出现红叉的情况
- Linux 复习笔记
- Android:关于InstallerPackgeName的二三事
- Atitit 职位的规划与来源 1.1. 职位任命多元化1 1.2. 上级任命1 1.3. 自我推荐1 1.4. 他人推荐,1 1.5. 可以下级选举1 1.6. 缺席任命1 1.7.
- 最简单的原生js别踩白块儿
- 【Bootstrap Table】在指定列中添加下拉框控件,并获取所选值
- Unity c# Unicode 转中文
- 虚拟币开发专题(数字货币编译过程中常见问题)
- 1027. 打印沙漏
- opencv 图像叠加滚动条