Linux基本命令之正则表达式(转义字符)

news2024/11/10 7:27:43

一:查看二进制文件 strings

命令:strings 文件名

生成链接文件 ln

命令:ln 选项 源文件(f1) 链接文件(f2)

软连接:eg:ln  -s f1 f2

软链接不能跨分区链接,但可以在同一分区的不同目录下链接;f1与f2的inode不一样,若删除f1则f2损坏。

硬件链接:ln f1 f2

硬链接也不能跨分区,f1和f2的inode一样,f1删除f2不损坏。

-rw-r--r-- 1 root root,0 APr 12 02:11

 链接数在软链接中不会增加,在硬链接中会增加。

Ln-f 删除已存在的目的文件,只适用于软链接。

Eg:ln -sf  f2 删除f2文件。

df -h 查看文件系统使用状态

I 管道符号命令:前面命令产生的结果是后面命令的操作对象。

Eg: df  -h I tail -n 3

> 输出重定向

在/tmp目录下建立文件f1,f1中内容是666。

输入命令echo 1234 >f1 这时文件的内容只有1234.

往文件中写入内容会覆盖文件中以前的内容。

>>  输出重定向 f1中的内容是666

输入命令echo 1234 >>f1 这时文件的内容就变为666 1234.

不会覆盖以前文件的内容,会追加。

二:标准输出(正确信息stdout)  1       >覆盖         >>追加

标准错误输出(错误信息stderr) 2        2>覆盖         >>追加

标准输入(stdin)           0           <

(1)将标准输出显示的正确信息和标准错误输出显示的错误信息分开在不同文件中

①cat  f1  f2    >r   2>w   →自动创建r,w文件夹将两个文件分开保存。

②cat  f1  f2    >r   2>/dev/null(回收站)   →正确信息存在r中,错误信息存在回收站中。

(2)将标准输出显示的正确信息和标准错误输出显示的错误信息分开在同一文件中

①cat  f1  f2  >r  2>&1  →将f1,f2显示信息放在r中

②cat  f1  f2  >r  2>>r  →将f1放在r中,f2也追加到r中

③cat  f1  f2  &>r          →将f1,f2都放在r中

“      ”  (双引号)中的特殊符号保留其含义

‘      ’  (单引号)中的特殊符号当普通字符对待

`     `    (反引号)可执行命令

三、转义符

①双引号“”:保留“”符号内部的特殊符号的含义:

②单引号‘’:将符号内部的特殊字符转化为普通字符:

③反引号``:内部的可执行命令仍然执行:

④反斜杠\:将后面第一个特殊符号转化为普通字符:

四、正则表达式及相关命令

正则表达式:正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。

  以下列文件(1.txt)内容为例:

(1)^:匹配以a开头的行:

(2)$:匹配以c结尾的行:

(3)[]:匹配含有括号内字符的行:

(4)[0-9]:匹配含有数字的行:

(5)[a-zA-Z]:匹配含有字母的行:

(6)[^0-9]匹配数字之外的字符的行:

(7)^[^ab]:匹配不以ab字符开头的行:

(8)^$匹配空格所在的行:

(9)[1][3-8][0-9]\{9\}:匹配电话号码:

五、正则表达式

概念:用来在文件中匹配符合条件的字符串

  1. * 用来表示匹配前一个字符0次或者多次
  2. . 用来表示匹配任意单个字符
  3. .*相当于通配符中的* 表示匹配任意一个或者多个字符

Grep:匹配文件内容中含有某个关键字的行

(1)grep k* y 显示y中所有含有k的行

     

 (2)grep kmmm* y 显示y中带至少带k且带3个m的行

  

   (3)grep k. y显示所有含k和任意一个字符的行

   (4)grep k .* y 显示所有含k和一个或多个字符的行

    

(5)^word 匹配以某个字符串开头的行

(6)word$ 匹配以某个字符串结尾的行

 

7 ^ & 匹配一个空行

8 \ 转意符 可以让后面的特俗符号失去含义变成普通符

9 [^  ]与[  ]相反

10 ^[^  ] 不以[  ]内内容为开头的行

11 [  ]\{ n\}匹配[ ]中匹配n次

12  [  ]\{ n,m\}匹配[ ]中匹配最少n次最多m次

13 vim f1  编写文件内容     按esc : wq 退出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1613227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小型架构实验模拟

一 实验需求 二 实验环境 22 机器&#xff1a; 做nginx 反向代理 做静态资源服务器 装 nginx keepalived filebeat 44机器&#xff1a; 做22 机器的备胎 装nginx keepalived 99机器&#xff1a;做mysql的主 装mysqld 装node 装filebeat 77机器&#xff1a;做mysq…

目标检测网络YOLO进化之旅

yolo系列网络在目标检测领域取得了巨大的成功&#xff0c; 尤其是在工程实践中&#xff0c; 以其出色的性能优势获得了广泛的应用落地。 YOLO的前3个版本是由同一个作者团队出品&#xff0c; 算是官方版本。 之后的版本都是各个研究团队自己改进的版本&#xff0c; 之间并无明…

Linux 安装 Docker +Docker Compose + cucker/get_command_4_run_container

TIP&#xff1a;下面演示的 Linux 系统为 CentOS 7.9。 Docker 更新你的系统并安装必要的依赖项&#xff1a; sudo yum update -y sudo yum install -y yum-utils device-mapper-persistent-data lvm2添加 Docker 的官方仓库&#xff1a; sudo yum-config-manager --add-rep…

ConcurrentHashMap 源码分析(一)

一、简述 本文对 ConcurrentHashMap#put() 源码进行分析。 二、源码概览 public V put(K key, V value) {return putVal(key, value, false); }上面是 ConcurrentHashMap#put() 的源码&#xff0c;我们可以看出其核心逻辑在 putVal() 方法中。 final V putVal(K key, V val…

golang本地缓存库之bigcache

1. 前言 上周工作之余逛github看到一个本地缓存库bigcache&#xff0c;这个是allegro公司开源的一个项目&#xff0c;主要是用于本地缓存使用&#xff0c;根据他们的博客说明&#xff0c;他们编写这个库最初的目的就是实现一个非常快速的缓存服务。 看了下bigcache这个库的源…

前端入门:HTML(CSS边框综合案例)

案例&#xff1a; 源代码&#xff1a; css-borders.html: <body> <div id"square"> </div> <br> <div id"triangle"> </div> <br> <div id"trapezium"> </div> <br> <div id…

华为海思校园招聘-芯片-数字 IC 方向 题目分享——第六套

华为海思校园招聘-芯片-数字 IC 方向 题目分享——第六套 (共9套&#xff0c;有答案和解析&#xff0c;答案非官方&#xff0c;未仔细校正&#xff0c;仅供参考&#xff09; 部分题目分享&#xff0c;完整版获取&#xff08;WX:didadidadidida313&#xff0c;加我备注&#x…

Linux--Linux常用命令

Linux常用命令 前言Linux命令格式命令讲解1、ls:查看当前目录下所有的内容语法:ls[-al][dir]2、pwd: 查看当前所在目录3、cd : 切换目录4、touch[文件名] : 如果文件不存在新建文件5、mkdir: 创建目录6、rm: 删除指定文件7、rmdir: 删除空目录8、cat:用于显示文件内容9、m…

磁盘损坏无法读取:原因、恢复方案与防范之道

在数字化信息爆炸的时代&#xff0c;磁盘作为数据存储的重要载体&#xff0c;承载着无数重要的文件和资料。然而&#xff0c;当磁盘突然损坏&#xff0c;无法读取数据时&#xff0c;我们往往会陷入困境&#xff0c;焦虑不已。面对这种情况&#xff0c;我们该如何应对&#xff1…

python爬虫--------requests案列(二十七天)

兄弟姐们&#xff0c;大家好哇&#xff01;我是喔的嘛呀。今天我们一起来学习requests案列。 一、requests____cookie登录古诗文网 1、首先想要模拟登录&#xff0c;就必须要获取登录表单数据 登录完之后点f12&#xff0c;然后点击network&#xff0c;最上面那个就是登录接口…

ubuntu扩展根目录磁盘空间

ubuntu扩展根目录磁盘空间 扩展虚拟机磁盘空间 查看现有磁盘状态 查询现有分区状态&#xff0c;/dev/sda是我们要扩展的磁盘 fdisk -l 开始进行磁盘空间的扩容 parted /dev/sda#扩展3号分区的空间 resizepart 3刷新分区空间 resize2fs /dev/sda3查询扩展结果&#xff0c;…

BADI-AC_DOCUMENT-交货单过账科目替代

BADI-AC_DOCUMENT-交货单过账科目替代 一、业务场景 事务代码VL02N/VL22N及其他交货单过账事务&#xff0c;在交货单过账生成会计凭证的时候对科目进行替代 二、BADI增强&#xff1a;AC_DOCUMENT 这个BADI理论上可以处理很多的会计凭证科目替代&#xff0c;不止是交货单过账…

Redis入门到通关之数据结构解析-动态字符串SDS

文章目录 Redis数据结构-动态字符串动态扩容举例二进制安全SDS优点与C语言中的字符串的区别 Redis数据结构-动态字符串 我们都知道 Redis 中保存的Key是字符串&#xff0c;value 往往是字符串或者字符串的集合。可见字符串是 Redis 中最常用的一种数据结构。 不过 Redis 没有…

Django中间件的源码解析流程(上)——中间件载入的前置

目录 1. ​前言​ 2. 请求的入口 3. 中间件加载的入口 4. 源码中的闭包实现 5. 最后 1. 前言 哈喽&#xff0c;大家好&#xff0c;我是小K,今天咋们分享的内容是&#xff1a;在学会Django中间件之后&#xff0c; 我们继续深入底层源码。 在执行中间件时请求到来总是从前往后…

Golang那些违背直觉的编程陷阱

目录 知识点1&#xff1a;切片拷贝之后都是同一个元素 知识点2&#xff1a;方法集合决定接口实现&#xff0c;类型方法集合是接口方法集合的超集则认定为实现接口&#xff0c;否则未实现接口 切片拷贝之后都是同一个元素 package mainimport ("encoding/json"&quo…

[Kubernetes] etcd的集群基石作用

文章目录 1. 配置存储2. 数据一致性3. 服务发现与协调4. 集群状态中枢5. 集群稳定性 1. 配置存储 etcd作为一个高度可靠的分布式键值存储系统&#xff0c;存储了Kubernetes集群的完整配置和状态数据。集群的元数据&#xff0c;包括节点信息、命名空间、部署、副本集、服务、持…

【leetcode面试经典150题】65. 旋转链表(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主&#xff0c;题解使用C语言。&#xff08;若有使用其他语言的同学也可了解题解思路&#xff0c;本质上语法内容一致&…

Mac电池管理软件 Batteries for Mac v2.2.9直装版

Batteries for Mac&#xff0c;作为一款专为Mac用户设计的电池管理软件&#xff0c;以其强大的功能和智能的监测机制&#xff0c;为用户提供了便捷、高效的电池使用体验。 Batteries for Mac(Mac电池)v2.2.9直装版下载 首先&#xff0c;Batteries for Mac具备实时电池监测功能&…

在protobuf里定义描述rpc方法的类型

service UserServiceRpc //在test.proto中定义 { rpc Login(LoginRequest)returns(LoginResponse); rpc GetFriendLists(GetFriendListRequest)returns(GetFriendListResponse); } test.proto文件生成test.pb.cc protoc test.proto --cpp_out./ 将生成的…

前端工程化01-复习jQuery当中的AJAX

4.1、基础概念 什么是服务器 一台存储网站内容、网站文件的电脑 什么是资源 网站中使用的文件&#xff08;html、css、图片、…&#xff09;这些东西就叫做资源数据也是服务器上的资源&#xff0c;而且是一个网站的灵魂 客户端 客户端应该指上网的设备但是在前端开发中&a…