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

shell脚本中的常用命令

Linux 主机名配置方法详解

主机名是系统在网络中的标识符,其配置允许字母、数字及短横线

一、文件配置法
配置文件路径
主文件/etc/hostname(存储永久主机名)
辅助文件/etc/hosts
vim /etc/hostname
gu.easylee.org
生效时间:需重启系统或执行 hostnamectl set-hostname 同步
二、命令配置法
1.hostnamectl 命令
hostnamectl hostname gu.easylee.org

生效时间:即时生效,无需重启

Linux 网络管理(基于 nmcli

nmcli 是 NetworkManager 的命令行工具,提供对网络配置的全生命周期管理

一、网络接口诊断与监控
1. 接口状态查询
命令功能解析
nmcli device status显示所有网络设备的连接状态
nmcli device show ens160查看指定接口的详细配置
nmcli connection show [id ens160]显示连接配置档案(Profile)参数
二、网络配置管理
1. 初始配置
DHCP 模式
nmcli con add \con-name "ens160-dhcp" \       # 配置名称ifname ens160 \                # 接口名type ethernet \                # 连接类型ipv4.method auto \             # 启用 DHCPipv4.route-metric 100 \        # 路由优先级ipv6.method disabled           # 禁用 IPv6

静态 IP 模式

nmcli con add \con-name "ens160-static" \ifname ens160 \type ethernet \ipv4.method manual \ipv4.addresses 172.25.254.100/24 \ipv4.gateway IP \    # 需更正为有效网关ipv4.dns "           " \ipv4.dns-search "example.com" \
2. 动态修改配置
# 修改 IP 地址并生效
nmcli con mod "ens160-static" \ipv4.addresses IP# 重载配置并激活(无需重启服务)
nmcli con reload                  # 重载所有配置
nmcli con down "ens160-static" && \
nmcli con up "ens160-static"      # 重启连接

VLAN 配置

nmcli con add type vlan \con-name "vlan10" \dev ens160 \id 10 \ipv4.method manual \ipv4.addresses IP
故障解决
问题类型诊断命令
DNS 解析失败nmcli dev show
路由异常ip route show table all

Linux 字符处理

本文从工程化角度解析常用字符处理工具的核心功能与进阶用法,涵盖数字序列生成、文本反转、格式化输出及结构化排序等场景

一、序列生成器 (seq)
1.基础数值序列
$ seq 1 3           # 生成连续整数
1
2
3

2. 格式化输出控制

参数功能
-f格式字符串
-s自定义分隔符

3. 序列生成

$ seq 1 2 10        # 步长为2的等差数列
1
3
5
7
9$ seq -w 8 12       # 等宽填充 (08 09 10 11 12)

二、文本反转 (tac)

1. 基础反转

$ seq 1 5 > input.txt
$ tac input.txt     # 按行逆序输出
5
4
3
2
1

三、格式化输出工具

1. printf 控制

格式符功能
%s字符串
%d整数
%.2f浮点数
%%转义百分号

2. echo 快捷输出

参数功能
-e启用转义
-n抑制换行
四、排序工具 (sort)
1. 排序模式
参数组合功能
-n数值排序
-r逆序输出
-u去重处理
-k N按列排序

uniq 命令

uniq 是处理 相邻重复行 的核心工具,需配合 sort 预处理以实现全局去重。以下从基础到高阶全面解析其功能与应用场景。

一、基础操作流程
1. 数据处理(排序)
# 生成无序测试数据
cat <<EOF > data.txt
3
4
3
2
1
5
7
9
6
8
12
8
6
30
8
EOF# 必须排序使重复行相邻
sort -n data.txt > sorted_data.txt
2. 核心功能参数
参数功能
无参数删除相邻重复行
-c统计重复次数
-d仅显示重复行
-u仅显示唯一行
2. 跨行比对控制
参数功能
-f N跳过前N列
-s N跳过前N字符
-w N仅比对前N字符

cut命令

命令作用
-d分隔符
-f指定显示的列
-c指定截取的字符

Linux xargs 命令技术详解与工程实践

xargs 是 UNIX/Linux 系统中处理标准输入与命令行参数转换的核心工具,尤其擅长解决 参数列表过长问题,支持高效批量操作。

一、核心功能与基础操作
1. 输入转参数
 # 正确:通过 xargs 将输入拆分为多个参数
echo /mnt/file{1..1000} | xargs touch

技术原理
xargs 默认以空白字符(空格、制表符、换行)分割输入流,生成参数列表并传递给目标命令

2.输入多行,输出单行

[root@gu ~]# vim /mnt/gu
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
[root@gu ~]# xargs < /mnt/gu
1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6
二、参数控制
1. 限制每行参数数量
# 每行最多传递3个参数
xargs -n 3 < input.txt
a1 a2 a3 a4 a5 a6
# 输出:
# a1 a2 a3
# a4 a5 a6
2. 自定义分隔符
# 处理冒号分隔的输入
echo "file1:file2:file3" | xargs -d: rm
# 等效于:rm file1 file2 file3

关键参数
-d 指定输入分隔符

三、优化参数

参数作用
-s设置单个命令最大参数长度
-x超出 -s 限制时报错终止

相关文章:

  • 如何在电力系统中配置和管理SNTP时间同步?
  • 《计算机组成原理》第 7 章 - 指令系统
  • 怎么实现pid隔离
  • 现代 CSS 高阶技巧:实现平滑内凹圆角的工程化实践
  • Linux下目录遍历的实现
  • 机器学习算法-决策树
  • Linux操作系统概述
  • 【文献阅读】EndoChat: Grounded Multimodal Large Language Model for Endoscopic Surgery
  • AI前端开发岗位面试准备指南
  • MATLAB绘制滤波器系数特性图
  • 【机器学习基础】机器学习入门核心算法:K-近邻算法(K-Nearest Neighbors, KNN)
  • 大模型——MCP 深度解析
  • day 38
  • python-自定义导包问题ModuleNotFoundError: No module named
  • uni-app 中开发问题汇总
  • 走进黑盒:SQL 是如何在数据库中执行的?
  • 大模型应用:开发移动端页面个人中心页面提示词
  • CVPR2022——立体匹配算法Fast-ACVNet复现
  • 不同数据场景下的聚类算法
  • MybatisPlus - Interceptor(拦截器)的功能点
  • 周村网站制作价格低/百度推广免费
  • 在对方网站做友情链接/免费广州seo
  • 企业商城网站开发建设/友情链接价格
  • asp建材公司网站源码/我想注册一个网站怎么注册
  • 网站建设企/电工培训机构
  • 一个网站开发/西地那非