一、网络相关命令
| 命令 | 特点 | 适用场景 |
|---|---|---|
ifconfig |
老牌、简单直接,部分新系统默认未安装 | 兼容旧系统,快速查看基础信息 |
ip addr |
现代、功能强,支持更多配置与状态 | 所有主流 Linux 发行版,推荐使用 |
netstat -i |
侧重接口统计与流量状态 | 排查网络丢包、错误时的辅助工具 |
nmcli |
与 NetworkManager 集成,适合图形 / 桌面环境 | 管理 NetworkManager 控制的网络设备 |
GCC具体编译流程
gcc 编译分为四步,每步作用及输出如下:
预处理(Preprocessing)
作用:处理#include、#define等预处理指令,插入头文件内容,替换宏定义。
输出:.i文件(预处理后的源代码)。
编译(Compilation)
作用:将预处理后的代码转为汇编语言,进行语法、语义分析及优化。
输出:.s文件(汇编代码)。
汇编(Assembly)
作用:将汇编代码转换为目标机器码,生成中间文件。
输出:.o文件(目标文件)。
链接(Linking)
作用:合并目标文件与库文件,解决函数和变量引用,生成可执行程序。
输出:可执行文件(默认a.out,或自定义名称)。
GDB如何调试
示例:



查看环境变量的方法

环境变量的概念
\]、\[\[ \]\]、(( )) 三者对比表 | 特性 | `[ ]`(test 命令) | `[[ ]]`(Bash 关键字) | `(( ))`(算术运算) | | | | | |---------------|---------------------------|-----------------------|------------------------------------|-------|-------------|---|-------| | **本质** | 外部可执行程序 `/usr/bin/[` | Bash/Zsh 内置关键字 | Shell 内置算术扩展 | | | | | | **POSIX 兼容性** | ✅ 兼容所有 Shell(POSIX 标准) | ❌ 仅 Bash/Zsh 支持 | ❌ 仅 Bash/Zsh 支持 | | | | | | **适用场景** | 通用文件 / 字符串 / 数字条件判断 | 增强的字符串 / 文件 / 逻辑判断 | 纯整数算术运算与比较 | | | | | | **空格要求** | **极其严格**,括号前后、运算符前后都必须有空格 | 宽松,括号前后建议加空格,运算符可省略 | 宽松,完全可以不写空格(如 `((a>10))`) | | | | | | **逻辑运算符** | `-a`(与)/ `-o`(或) | `&&`(与)/ \` | | \`(或) | `&&`(与)/ \` | | \`(或) | | **字符串比较** | `=`/`!=`,不支持模式匹配 | `=`/`==` 支持通配符 / 正则匹配 | 不支持字符串比较 | | | | | | **数字比较** | `-eq`/`-ne`/`-gt`/`-lt` 等 | 不支持数字比较 | 直接用 `>`/`<`/`==`/`+`/`-`/`*`/`/` 等 | | | | | | **文件测试** | `-f`/`-d`/`-e` 等全部支持 | 全部支持 | 不支持文件测试 | | | | | | **空值处理** | 变量为空时容易报错,需加双引号 | 变量为空时更安全,无需额外引号 | 不处理字符串变量 | | | | | 赋值方式对比: | 赋值方式 | 展开时机 | 核心特性 | 典型用途 | |------|--------------|--------------|--------------| | `=` | 使用时(延迟展开) | 递归引用,易产生死循环 | 引用后续定义的变量 | | `:=` | 定义时(立即展开) | 静态值,不受后续修改影响 | 固定不变的常量 | | `+=` | 保持原变量的展开方式 | 在原值末尾追加内容 | 拼接编译选项、源文件列表 | | `?=` | 定义时(仅未定义时生效) | 提供默认值,支持外部覆盖 | 定义可被重写的配置项 | [Linu操作系统命令](http://file:///Z:/BaiduNetdiskDownload/linux%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%91%BD%E4%BB%A4.pdf "Linu操作系统命令") [Linux操作系统下的文本编辑](http://file:///Z:/BaiduNetdiskDownload/linux%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E4%B8%8B%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91.pdf "Linux操作系统下的文本编辑") [gcc与gdb的使用](http://file:///Z:/BaiduNetdiskDownload/gcc%E4%B8%8Egdb%E7%9A%84%E4%BD%BF%E7%94%A8.pdf "gcc与gdb的使用") [环境变量配置](http://file:///Z:/BaiduNetdiskDownload/%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E9%85%8D%E7%BD%AE.pdf "环境变量配置") [shell编程](http://file:///Z:/BaiduNetdiskDownload/shell%E7%BC%96%E7%A8%8B.pdf "shell编程")
