Ubuntu(乌班图)基础指令

一、网络相关命令

命令 特点 适用场景
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操作系统命令

Linux操作系统下的文本编辑

gcc与gdb的使用

环境变量配置

shell编程

相关推荐
weixin_4462608512 小时前
从被动镜像到主动智能体:面向网络物理人工智能的整体论数字孪生(HDT-Net)
网络·人工智能
ZJH__GO12 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
小小、码农12 小时前
Linux进程控制:从fork到exec,手写一个简易Shell
linux·运维·服务器
不会就选b13 小时前
Linux之进程间通信(二)---模拟进程池
linux·运维·服务器
shengnan_wsn14 小时前
【协议】【TCP】
网络·网络协议·tcp/ip
烟雨江南78514 小时前
2026汽车制造与新能源整车柔性产线Agentic-Workflow白皮书:跨APS_MES_ERP多智能体动态排产与装配容错实战
大数据·网络·人工智能·自动化·ai客服·企业agent
沫璃染墨15 小时前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++
小僧景贤15 小时前
CAN调试全套配件+详细实操使用方法(从零排查、步骤落地、现场通用)
网络·can通信·嵌入式通信
AIgorithmGEEK15 小时前
Linux 环境变量完全指南:从入门到理解底层原理
linux·运维·服务器
修罗王16 小时前
Linux Docker 服务管理与排查实战指南(新手速查版)
运维·docker