当前位置: 首页 > news >正文

Linux 网络与 Vim 编辑器操作

📚 Linux 网络与 Vim 编辑器操作手册

一、Vim 编辑器

(一)工作模式

Vim 编辑器通过四种工作模式实现高效文本编辑,模式间的灵活切换是使用 Vim 的核心技巧:

模式触发方式核心功能
命令模式启动 Vim 后默认进入光标移动、文本删除 / 复制 / 粘贴、查找替换等基础操作
编辑模式命令模式下按 i/I/o/O/a/A直接输入和修改文本内容
末行模式命令模式下输入 :执行保存、退出、全局设置等高级操作
可视模式命令模式下按 v/V/ctrl+v块级选择文本,方便批量编辑

(二)命令模式常用操作

命令 / 按键功能描述
G跳转至文本最后一行
gg跳转至文本第一行
nG/ngg跳转至第 n 行(如 10G 跳转到第 10 行)
ctrl+f向下翻页
ctrl+b向上翻页
home/^/0光标移动到当前行首
end/$光标移动到当前行尾
x/del删除光标所在字符
dd删除光标所在行
ndd从光标行开始删除 n 行(如 3dd 删除 3 行)
d^删除光标前字符至行首
d$删除光标处字符至行尾
yy复制光标所在行
nyy从光标行开始复制 n 行(如 5yy 复制 5 行)
p在光标下行粘贴复制内容
P在光标上行粘贴复制内容
/关键词向下查找关键词,n 继续向下,N 向上回溯
:noh(末行模式)取消查找高亮
u撤销上一步操作

(三)模式切换指南

1. 命令模式 → 编辑模式
按键进入方式描述
i在光标当前位置前插入
I跳转至行首并插入
o在光标下行新建空白行并插入
O在光标上行新建空白行并插入
a在光标当前位置后插入
A跳转至行尾并插入
2. 命令模式 ↔ 末行模式
  • 命令模式输入 : 进入末行模式

  • 末行模式按 esc 返回命令模式

(四)末行模式常用操作

命令功能描述
:q未修改文件时,退出 Vim
:q!强制退出,不保存修改内容
:w保存当前修改
:w /path/filename另存为指定路径文件
:wq/:x保存修改并退出
:wq!强制保存修改并退出(适用于只读文件)
:set nu/:set number显示行号
:set nonu隐藏行号
:e /path/filename打开指定文件(需先保存当前文件)
:r /path/filename将指定文件内容插入当前光标位置
:%s/旧内容/新内容/g全局替换所有匹配的文本(g 表示全局,不加 g 只替换每行第一个匹配项)
:n,m s/旧内容/新内容/g替换第 n 至 m 行中匹配的文本(如 :1,5s/abc/def/g)

(五)多文件编辑技巧

命令功能描述
vim file1 file2 -o水平分屏显示多个文件,ctrl+w+方向键 切换窗口
vim file1 file2 -O垂直分屏显示多个文件,ctrl+w+方向键 切换窗口
:tabnew file新建标签页打开文件
:tabn/:tabp切换到下一个 / 上一个标签页

二、Linux 网络操作

(一)图形化网络配置

工具操作方式适用场景
系统设置图形界面 → 网络 → 配置 IP/DNS 等桌面环境下的可视化配置
nmtui终端输入 nmtui 启动文本图形界面无桌面环境的交互式配置

(二)网卡配置文件解析

配置文件路径:/etc/sysconfig/network-scripts/ifcfg-<网卡名>(如 ifcfg-ens33)

配置项取值范围功能描述
TYPEEthernet/WiFi网络接口类型(通常为以太网)
BOOTPROTOdhcp/static/noneIP 分配方式:动态获取 / 静态配置 / 不使用协议
NAME自定义名称NetworkManager 识别的连接名
DEVICE网卡名(如 ens33)绑定的物理设备名
ONBOOTyes/no是否开机自动激活该连接
IPADDRIPv4 地址(如 192.168.1.100)静态 IP 地址(BOOTPROTO=static 时生效)
PREFIX/NETMASK24/255.255.255.0子网掩码,PREFIX=24 等价于 NETMASK=255.255.255.0
GATEWAY网关 IP(如 192.168.1.1)跨网段通信的出口地址
DNS1/DNS2DNS 服务器 IP(如 8.8.8.8)域名解析服务器,DNS1 为主,DNS2 为备用
IPV6INITyes/no是否启用 IPv6 协议
HWADDR/MACADDRMAC 地址(如 00:11:22:33:44:55)网卡物理地址,通常自动生成,克隆虚拟机时需手动修改防冲突
USERCTLyes/no是否允许普通用户控制该网卡(默认 no,仅 root 可操作)
ZONE防火墙区域(如 public/internal)绑定防火墙规则集,需配合 firewalld 使用

(三)网络服务管理

命令功能描述
systemctl restart network重启传统网络服务(影响所有网卡)
systemctl restart NetworkManager重启 NetworkManager 服务(推荐)
nmcli connection up <连接名>激活指定网络连接(如 nmcli connection up ens33)
nmcli connection down <连接名>禁用指定网络连接

(四)网卡创建与配置(虚拟机场景)

  1. 添加虚拟网卡

虚拟机软件中:设置 → 添加 → 网络适配器 → 选择网络模式(如仅主机/桥接)→ 确定

  1. 创建网络连接
nmcli connection add con-name <连接名> ifname <网卡名> type ethernet# 示例:nmcli connection add con-name ens36 ifname ens36 type ethernet
  1. 配置静态 IP
nmcli connection modify <连接名> \  ipv4.addresses <IP地址>/<掩码> \  ipv4.gateway <网关IP> \  ipv4.dns <DNS服务器> \  ipv4.method manual \  connection.autoconnect yes# 示例:nmcli connection modify ens36 \  ipv4.addresses 192.168.200.10/24 \  ipv4.gateway 192.168.200.254 \  ipv4.dns 114.114.114.114 \  ipv4.method manual \  connection.autoconnect yes
  1. 激活配置
nmcli connection up ens36

(五)IP 转发与静态路由

1. IP 转发配置(实现路由器功能)
# 临时开启 IPv4 转发echo 1 > /proc/sys/net/ipv4/ip_forward# 永久生效(重启后有效)echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.confsysctl -p  # 立即加载配置
2. 静态路由配置
路由类型添加命令示例删除命令示例
主机路由route add -host 172.16.40.10 gw 172.16.30.254 dev ens160route del -host 172.16.40.10 gw 172.16.30.254 dev ens160
网络路由(带网关)route add -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.20.1 dev ens160route del -net 172.16.30.0 netmask 255.255.255.0 gw 172.16.20.1 dev ens160
网络路由(直连)route add -net 172.16.30.0 netmask 255.255.255.0 dev ens160route del -net 172.16.30.0 netmask 255.255.255.0 dev ens160

(六)禁 Ping 配置

# 临时禁 Pingecho 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all# 永久禁 Ping(重启后有效)echo "net.ipv4.icmp_echo_ignore_all = 1" >> /etc/sysctl.confsysctl -p  # 立即生效

说明:禁 Ping 仅阻止 ICMP 回声请求,不影响 SSH、HTTP 等其他网络服务

http://www.dtcms.com/a/297116.html

相关文章:

  • 3D实景的概念、特点及应用场景
  • 从“人工眼”到‘智能眼’:EZ-Vision视觉系统如何重构生产线视觉检测精度?
  • AI与区块链融合:2025年的技术革命与投资机遇
  • C++与Hive、Spark、libhdfs、ACID交互技巧
  • Vue2下
  • VR 技术在污水处理领域的创新性应用探索​
  • C++ string:准 STL Container
  • 【03】C#入门到精通——C# 输出格式、内容拼接、if判断 、bool 表达式、函数封装调用
  • 【深度学习优化算法】09:Adadelta算法
  • MyBatis-Plus中使用BaseMapper实现基本CRUD
  • MinIO:云原生对象存储的终极指南
  • Qt 与 SQLite 嵌入式数据库开发
  • 云原生可观测-日志观测(Loki)最佳实践
  • SQLite中SQL的解析执行:Lemon与VDBE的作用解析
  • mac下 vscode 运行 c++无法弹出窗口
  • 云原生介绍
  • 云原生 —— K8s 容器编排系统
  • FunASR实时多人对话语音识别、分析、端点检测
  • SQLite Insert 语句详解
  • 视频质量检测效率提升28%!陌讯多模态融合方案在流媒体场景的技术实践
  • 低速信号设计之 SWD 篇
  • Windows-WSL-Docker端口开放
  • 【Java学习】匿名内部类的向外访问机制
  • C++ - 模板进阶
  • 物理机的一些故障
  • JavaWeb项目入门(从0开始)
  • 进阶向:基于Python的局域网聊天工具(端对端加密)
  • Hadoop 之 Yarn
  • iOS 网络请求常用依赖库与系统自带 API 介绍与示例
  • 在 Azure 中配置 SMS 与 OTP