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

Linux基础-正则表达式

正则表达式概述

正则表达式是处理字符串的一种工具,可以用于查找、删除、替换特定的字符串,主要用于文件内容的处理。与之不同的是,通配符则用于文件名称的匹配。正则表达式通过使用特殊符号,帮助用户轻松实现对文本的操作。

一、正则表达式与通配符的区别

  1. 正则表达式匹配的是文件内容信息。
  2. 通配符匹配的是文件名称信息。

二、系统中的特殊符号

1. 美元符号($)
  • 取出变量内容:用于显示环境变量。
    echo $LANG   # 获取字符编码
    echo $PATH   # 查看环境变量
    
  • 取出指定列信息:常用于awk中。
    awk -F ':' '{ print $4 }' /etc/passwd
    
  • 表示用户命令提示符:超级用户为#,普通用户为$
  • 表示行尾:在正则表达式中表示一行的结尾。
2. 叹号符号(!)
  • 取反或排除:常用于grep等工具。
  • 强制操作:如在vim中使用wq!强制保存并退出。
3. 竖线符号(|)
  • 管道符号:将前一个命令的输出作为下一个命令的输入。
    ps -ef | grep tomcat
    
  • xargs结合使用:用于分组操作。
    find / -name "*.log" | xargs rm -rf
    
4. 井号(#)
  • 注释符号:在脚本中表示注释。
  • 超级用户提示符:表示超级用户的命令提示符。
5. 引号符号
  • $():执行命令并返回结果。
  • 双引号(“”):部分内容会被解析。
  • 单引号(‘’):输入即输出,不解析内容。
  • 反引号(``):执行命令并返回结果。
6. 定向符号
  • <>:用于输入和输出重定向。
  • >>:追加重定向。
7. 路径符号
  • .:表示当前目录。
  • ..:表示上一级目录。
  • ~:表示用户家目录。
8. 逻辑符号
  • &&:表示前一个命令执行成功后,再执行后面的命令。
  • ||:前一个命令执行失败后,才会执行后面的命令。

三、基础与扩展正则符号

1. 基础正则符号
  • ^:匹配行首。
  • $:匹配行尾。
  • .:匹配任意一个字符。
  • *:匹配前一个字符出现0次或多次。
  • []:匹配括号内的任意字符。
  • \:转义字符,用于处理特殊字符。
2. 扩展正则符号
  • +:前一个字符出现一次或多次。
  • ?:前一个字符出现0次或1次。
  • |:或,匹配多个选项。
  • ():分组,匹配整体或用于引用前面的匹配。
  • {}:指定前一个字符出现的次数。
3. 注意事项
  • 默认grepsed无法直接识别扩展正则符号,需要提升级别:
    • grep 使用 egrepgrep -E
    • sed 使用 sed -r

示例:批量创建用户并设置密码

通过sed命令批量创建用户liyb01liyb10,并为每个用户设置初始密码123456

seq -w 10 | sed -r 's#(.*)#useradd lyb\1;echo 123456 | passwd --stdin lyb\1#g'

这个命令会自动生成10个用户,并给每个用户设置默认密码。


总结

通过系统特殊符号和正则表达式,可以有效提升文件操作和字符串处理的效率。了解这些符号的含义及其用法,能够更好地处理命令行操作中的常见需求。

相关文章:

Linux基础-正则表达式

正则表达式概述 正则表达式是处理字符串的一种工具&#xff0c;可以用于查找、删除、替换特定的字符串&#xff0c;主要用于文件内容的处理。与之不同的是&#xff0c;通配符则用于文件名称的匹配。正则表达式通过使用特殊符号&#xff0c;帮助用户轻松实现对文本的操作。 一…...

【HTML格式PPT离线到本地浏览】

文章目录 概要实现细节小结 概要 最近在上课时总是出现网络不稳定导致的PPT无法浏览的情况出现&#xff0c;就想到下载到电脑上。但是PPT是一个HTML的网页&#xff0c;无法通过保存网页&#xff08;右键另存为mhtml只能保存当前页&#xff09;的形式全部下载下来&#xff0c;试…...

如何在Vue项目中封装axios

文章目录 一、axios简介基本使用 二、封装axios的原因三、封装axios的方法1. 设置接口请求前缀2. 设置请求头和超时时间3. 封装请求方法4. 添加请求拦截器5. 添加响应拦截器小结 一、axios简介 axios 是一个基于 XMLHttpRequest 的轻量级HTTP客户端&#xff0c;适用于浏览器和…...

linux 配置ssh免密登录

一、 cd /root/.ssh/ #不存在就创建mkdir /root/.ssh ssh-keygen #连续按4个回车 ll二、将公钥发送到目标服务器下 #公钥上传到目标服务器 ssh-copy-id root192.168.31.142 #回车完也是要输入密码的 #测试一下免密登录&#xff1a; ssh root192.168.31.142 成功...

【AI绘画】Midjourney进阶:三分线构图详解

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AI绘画 | Midjourney 文章目录 &#x1f4af;前言&#x1f4af;什么是构图为什么Midjourney要使用构图 &#x1f4af;三分线构图特点使用场景提示词书写技巧测试 &#x1f4af;小结 &#x1f4af;前言 【AI绘画】Midjourney进阶&a…...

享元模式(C++)

定义&#xff1a;享元模式是一种结构型设计模式&#xff0c;它使用共享对象&#xff0c;用以尽可能减少内存使用和提高性能。享元模式通过共享已经存在的对象实例&#xff0c;而不是每次需要时都创建新对象实例&#xff0c;从而避免大量重复对象的开销。 对比&#xff1a; 与单…...

开发一个UniApp需要多长时间

开发一个UniApp所需的时间因项目的规模、复杂度、开发团队的经验水平以及开发过程中的需求变更等多种因素而异。因此&#xff0c;很难给出一个确切的时间范围。然而&#xff0c;我们可以从以下几个方面来大致估算开发时间&#xff1a; 项目规划与需求分析&#xff1a; 在项目开…...

服务器源IP暴露后的安全风险及防御措施

在互联网安全领域&#xff0c;服务器的源IP地址泄露可能成为黑客攻击的切入点。本文将列举十种常见的攻击类型&#xff0c;并提供相应的防御建议&#xff0c;帮助管理员们更好地保护服务器免受潜在威胁。 一、引言 服务器源IP地址的暴露意味着攻击者可以直接针对服务器发起攻击…...

YoloV8改进策略:BackBone改进|CAFormer在YoloV8中的创新应用,显著提升目标检测性能

摘要 在目标检测领域,模型性能的提升一直是研究者和开发者们关注的重点。近期,我们尝试将CAFormer模块引入YoloV8模型中,以替换其原有的主干网络,这一创新性的改进带来了显著的性能提升。 CAFormer,作为MetaFormer框架下的一个变体,结合了深度可分离卷积和普通自注意力…...

网络编程(19)——C++使用asio协程实现并发服务器

十九、day19 上一节学习了如果通过asio协程实现一个简单的并发服务器demo&#xff08;官方案例&#xff09;&#xff0c;今天学习如何通过asio协程搭建一个比较完整的并发服务器。 主要实现了AsioIOServicePool线程池、逻辑层LogicSystem、粘包处理、接收协程、发送队列、网络…...

【SQL】深入了解 SQL 索引:数据库性能优化的利器

目录 引言1. 什么是 SQL 索引&#xff1f;1.1 索引的基本概念1.2 索引的优缺点 2. 索引的工作原理2.1 B 树索引2.2 哈希索引2.3 全文索引 3. 索引创建方式3.1 单列索引示意图3.2 复合索引示意图3.3 唯一索引示意图 4. 如何创建索引4.1 创建单列索引4.2 创建唯一索引4.3 创建全文…...

河道垃圾数据集 水污染数据集——无人机视角数据集 共3000张图片,可直接用于河道垃圾、水污染功能检测 已标注yolo格式、voc格式,可直接训练;

河道垃圾数据集 水污染数据集——无人机视角数据集 共3000张图片&#xff0c;可直接用于河道垃圾、水污染功能检测 已标注yolo格式、voc格式&#xff0c;可直接训练&#xff1b; 河道垃圾与水污染检测数据集&#xff08;无人机视角&#xff09; 项目概述 本数据集是一个专门用…...

[棋牌源码] 2023情怀棋牌全套源代码含多套大厅UI及600+子游源码下载

降维打击带来的优势 这种架构不仅极大提升了运营效率&#xff0c;还降低了多端维护的复杂性和成本。运营商无需投入大量资源维护多套代码&#xff0c;即可实现产品的全终端覆盖和快速更新&#xff0c;这就是产品层面的降维打击。 丰富的游戏内容与多样化大厅风格 类型&#…...

深度学习:预训练模型(基础模型)详解

预训练模型&#xff08;基础模型&#xff09;详解 预训练模型&#xff08;有时也称为基础模型或基准模型&#xff09;是机器学习和深度学习领域中一个非常重要的概念&#xff0c;特别是在自然语言处理&#xff08;NLP&#xff09;、计算机视觉等领域。这些模型通过在大规模数据…...

欧科云链研究院深掘链上数据:洞察未来Web3的隐秘价值

目前链上数据正处于迈向下一个爆发的重要时刻。 随着Web3行业发展&#xff0c;公链数量呈现爆发式的增长&#xff0c;链上积聚的财富效应&#xff0c;特别是由行业热点话题引领的链上交互行为爆发式增长带来了巨量的链上数据&#xff0c;这些数据构筑了一个行为透明但与物理世…...

国外电商系统开发-运维系统登录阈值

为了登录安全&#xff0c;在登录验证的时候&#xff0c;如果一个IP连续登录的次数超过5次&#xff0c;那么系统则会拒绝这个IP的所有登录&#xff0c;而不管密码是否正确&#xff0c;就像是银行卡一样。 设置登录阈值&#xff1a; 注意&#xff1a;如果您的IP不幸被系统锁定&am…...

设备台账管理是什么

设备管理对企业至关重要。比如在电子加工企业&#xff0c;高效的设备管理能减少设备故障&#xff0c;提升生产效率&#xff0c;为企业赢得市场竞争优势。设备台账管理作为设备管理的一个核心部分&#xff0c;起着重要的作用。 让我们一起从本篇文章中探索设备台账管理是什么&a…...

操作教程|基于DataEase用RFM分析法分析零售交易数据

DataEase开源BI工具可以在店铺运营的数据分析及可视化方面提供非常大的帮助。同样&#xff0c;在用于客户评估的RFM&#xff08;即Recency、Frequency和Monetary的简称&#xff09;分析中&#xff0c;DataEase也可以发挥出积极的价值&#xff0c;通过数据可视化大屏的方式实时展…...

使用Go语言的gorm框架查询数据库并分页导出到Excel实例

文章目录 基本配置配置文件管理命令行工具: Cobra快速入门基本用法 生成mock数据SQL准备gorm自动生成结构体代码生成mock数据 查询数据导出Excel使用 excelize实现思路完整代码参考 入口文件效果演示分页导出多个Excel文件合并为一个完整的Excel文件 完整代码 基本配置 配置文…...

Run the FPGA VI 选项的作用

Run the FPGA VI 选项的作用是决定当主机 VI 运行时&#xff0c;FPGA VI 是否会自动运行。 具体作用&#xff1a; 勾选 “Run the FPGA VI”&#xff1a; 当主机 VI 执行时&#xff0c;如果 FPGA VI 没有正在运行&#xff0c;系统将自动启动并运行该 FPGA VI。 这可以确保 FPG…...

Windows 11终极优化指南:用Win11Debloat免费提升51%系统性能

Windows 11终极优化指南&#xff1a;用Win11Debloat免费提升51%系统性能 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本&#xff0c;用于从Windows中移除预装的无用软件&#xff0c;禁用遥测&#xff0c;从Windows搜索中移除Bing&#xff0c;以及执行各种其他更改以简…...

ESP8266配网总失败?详解AirLink和SoftAP两种模式在机智云项目中的实战区别与选择

ESP8266配网失败全解析&#xff1a;从AirLink到SoftAP的深度诊断手册 配网失败时&#xff0c;ESP8266的红色LED灯常亮像在嘲笑你的无能——这可能是物联网开发者最熟悉的挫败感。当机智云项目卡在最后10%的配网环节&#xff0c;那种"硬件没问题、代码没报错&#xff0c;但…...

避坑指南:GD32F407移植FATFS到SD卡,这几个STM32老司机常踩的坑你别再跳了

GD32F407 FATFS移植避坑实战&#xff1a;STM32老手最容易忽略的5个硬件差异 从STM32切换到GD32F407的开发者&#xff0c;往往带着"Pin to Pin兼容"的预期开始SD卡文件系统移植&#xff0c;却在调试阶段遭遇各种诡异问题。上周一位资深工程师向我展示了他的调试记录&a…...

深度解析ShardingCore:EF Core分库分表架构实战与性能优化指南

深度解析ShardingCore&#xff1a;EF Core分库分表架构实战与性能优化指南 【免费下载链接】sharding-core high performance lightweight solution for efcore sharding table and sharding database support read-write-separation .一款ef-core下高性能、轻量级针对分表分库…...

Anaconda环境配置:TranslateGemma开发最佳实践

Anaconda环境配置&#xff1a;TranslateGemma开发最佳实践 1. 环境准备与快速部署 如果你正在尝试运行TranslateGemma-12B-it这样的翻译模型&#xff0c;很可能会遇到Python版本冲突、CUDA不兼容或者依赖包打架的问题。Anaconda的环境隔离功能正好能解决这些头疼的事情。 An…...

STM32光敏电阻传感器实战:从硬件接线到代码调试全流程(附避坑指南)

STM32光敏电阻传感器实战&#xff1a;从硬件接线到代码调试全流程&#xff08;附避坑指南&#xff09; 在智能家居和环境监测项目中&#xff0c;光照强度检测是一个基础但关键的功能模块。光敏电阻因其成本低廉、使用简单&#xff0c;成为许多开发者的首选传感器。本文将带你从…...

2023最新免费天气预报API接口推荐与使用指南

1. 2023年最值得尝试的免费天气预报API 天气预报API已经成为开发者工具箱里的常备工具&#xff0c;无论是做旅行App、外卖配送系统还是智能家居设备&#xff0c;实时天气数据都扮演着关键角色。我最近在开发一个户外运动提醒功能时&#xff0c;把市面上主流的免费天气接口都试了…...

BGE-Large-Zh生产部署:Kubernetes集群方案

BGE-Large-Zh生产部署&#xff1a;Kubernetes集群方案 1. 引言 在人工智能应用快速发展的今天&#xff0c;高效稳定的模型部署方案成为企业成功的关键。BGE-Large-Zh作为优秀的中文语义向量模型&#xff0c;在生产环境中需要可靠的部署方案来保证服务的高可用性和可扩展性。本…...

提示工程架构师用Agentic AI,为智能城市提升品质生活

提示工程架构师&#xff1a;借助Agentic AI提升智慧城市品质生活 一、引言 (Introduction) 钩子 (The Hook) 想象一下&#xff0c;你生活在这样一个城市&#xff1a;每天清晨&#xff0c;你的智能设备会根据当天的天气、你的日程安排&#xff0c;精准推荐最适宜的衣物和出行方式…...

四旋翼无人机PID控制实战:从零搭建Matlab仿真模型(附完整代码)

四旋翼无人机PID控制实战&#xff1a;从零搭建Matlab仿真模型&#xff08;附完整代码&#xff09; 当第一次看到四旋翼无人机在空中灵活翻转、精准悬停时&#xff0c;很多人都会被这种看似违反物理直觉的飞行姿态所震撼。作为现代控制理论最生动的应用场景之一&#xff0c;无人…...