grep中加单引号与不加引号的区别

2023-11-12

今天写命令时本想查找最后带标点的句子,结果发现不带引号时无法识别

grep -n \.$ exp:


grep -n '\.$' exp:


貌似不加单引号无法达到我们想要的效果,上网搜了一下,有人说是因为引号的作用,其实这在shell变量中就有介绍,明显的是,这里单引号起到了转义的作用,并不像变量中提到的说双引号可转义,单引号保持原样,我在网上查了一下,看到有人在论坛上的回答,整理一下,事实是这样;

linux中的单引号和双引号的确对转义字符有不同的分别,但前提是系统的转义字符,例如:$,>,<等(系统保留字),Linux的系统保留字很多
而grep对单引号和双引号对grep一样,是因为设计时grep天生支持正则表达式,所以在grep看来,它的转义字符包括两部分,一部分就是系统保留字,另一部分就是正则表达式的转义字符,比如,^是正则表达式的转义字符,但由于他并非系统保留字,所以对它来讲,单引号和双引号都是一样的,但是不加引号就不起作用。但如果你要查找的信息中包含$,例如:"$boy"和'$boy‘'那可就不一样,
因此,对于系统保留字,grep依然满足不同引号的不同用法,但是对正则表达式的转义字符,则对引号不敏感,因此这告诉我们,以后将系统保留字与正则表达式混用时,正则表达式尽量按照规则来写

还是回到问题本身,如果搜索内容中有空格,则需要使用单引号或者双引号把搜素内容引起来!

笔者一般在使用grep时都老老实实的多输入两个单引号。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

grep中加单引号与不加引号的区别 的相关文章

  • sh 和 bash 中 pgrep 的区别

    这是一个测试 bash c pgrep f novalidname sh c pgrep f novalidname 11202 Why is pgrep运行时给出输出sh 据我所知 我的计算机上没有名为novalidname 这可能是一个
  • 错误:“grep:参数列表太长”[重复]

    这个问题在这里已经有答案了 我正在尝试运行以下命令 但出现参数太长错误 你能帮我吗 HOST grep rl pattern home public html bash bin grep Argument list too long 有没有
  • grep 正则表达式 空白行为

    我有一个文本文件 其中包含以下内容 12 34 EUR 5 67 EUR EUR 之前有一个空格 我忽略了 0 XX EUR 我试过 grep 1 9 0 9 0 9 2 sEUR gt didn t match grep 1 9 0 9
  • 如何对多种文件类型使用 grep --include 选项?

    当我想 grep 某个目录中的所有 html 文件时 我执行以下操作 grep include html pattern R some path 效果很好 问题是如何grep某个目录中的所有html htm php文件 由此使用 grep
  • grep 匹配的行和字符串位置

    我需要找到一种方法将 grep 匹配的精确坐标从一个文件输出到另一个文件 所以说 模式 包含要匹配的字符串模式列表 搜索 是一个基于行的文本 ASCII 文件 其中包含要搜索的文本 with grep onf patterns search
  • 如何 grep 查找同一行中存在的两个单词? [复制]

    这个问题在这里已经有答案了 如何 grep 查找包含两个输入单词的行 我正在寻找包含这两个单词的行 我该怎么做 我尝试过这样的管道 grep c word1 grep r word2 logs 它只是在第一个管道命令之后卡住了 Why 为什
  • 将文件列表传递给 grep

    我有一个文件中的文件列表 该列表很大 并且文件名是非标准的 这意味着 有些文件名包含空格 非 ascii 字符 引号 单引号 所以 通过那个huge不能选择将文件列表作为 grep 参数 因为我不确定我不会超过linux允许的参数长度 我想
  • 用于搜索内部文件的 ssh 命令

    几周前 我的两个网站可能被 ftp 暴力攻击所利用 破坏了我网站的许多文件 我发现他们通常会在js或php文件中插入以下代码 Trojan code removed as irrelevant to this question 我想通过 s
  • 使用 grep 仅打印上下文

    Using grep http www computerhope com unix ugrep htm 您可以打印与您的搜索查询匹配的行 添加一个 C选项将打印两行周围的上下文 如下所示 gt grep C 2 lorem some con
  • 如何在Mac终端中找到带有“top”的特定进程

    我试过了top grep skype例如 但它不起作用 我正在尝试按名称查找特定进程 使用这个代替 ps ax grep i skype
  • 如何“grep”连续流?

    可以用吗grep在连续的流中 我的意思是有点tail f
  • Grep 仅在“:”之前匹配

    你好 我怎样才能 grep 只匹配之前 mark 如果我跑grep test1 file 它显示所有三行 test1 x 29688 test1 test2 test2 x 22611 test1 test3 x 25163 test1 t
  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • git 匹配多个单词的标签

    我们可以得到最后一个 git 标签 它以一个单词 例如 TEST 开头 如下所示 git describe tag dirty match TEST 我想知道如何获得最后一个以 word1 开头的标签orword2 例如测试OR跑步 我尝试
  • grep 两个分隔符之间的子字符串

    我有很多bash使用的脚本perl内的表达式grep为了提取两个分隔符之间的子字符串 例子 echo BeginMiddleEnd grep oP lt Begin End 问题是 当我将这些脚本移植到运行的平台时busybox 融合的 g
  • 使用 Grep 查找两个短语之间的文本块(包括短语)

    是否可以使用 grep 来高亮所有以以下内容开头的文本 mutablePath CGPathCreateMutable 并以以下内容结尾 CGPathAddPath skinMutablePath NULL mutablePath 这两个短
  • 比较linux中的两个未排序列表,列出第二个文件中的唯一项

    我有 2 个包含号码列表 电话号码 的文件 我正在寻找一种列出第二个文件中第一个文件中不存在的数字的方法 我尝试过各种方法 comm getting some weird sorting errors fgrep v x f second
  • 使用 grep 进行多种搜索模式

    考虑我有以下数据流 BODY1 attrib1 someval11 attrib2 someval12 attrib3 someval13 BODY2 attrib1 someval21 attrib2 someval22 attrib3
  • 正则表达式匹配不可约分数

    我怎样才能匹配不可约分数 http en wikipedia org wiki Irreducible fraction用正则表达式 例如 23 25 3 4 5 2 100 101 等 首先 我不知道正则表达式中的gcd算法实现 Upda
  • 从 shell 查找不包含特定注释的 XML 文件

    我想搜索 awk grep sed 几个 XML 文件 pom xml 文件 跳过某些文件夹 而且 第一个条件是它们必须包含标签

随机推荐

  • 只有持续的变革和创新才是CRM成功的关键

    这两年来 我目睹了众多的企业在进行CRM的尝试和体验 也亲历了众多的企业对CRM成功与失败的讨论 甚至于有很多关于CRM失败的项目和言论 让更多后面的企业停止了尝试的脚步 而这一切 不应该只归罪与一个CRM系统 或者一个CRM项目 而要更多
  • error: CreateProcess: No such file or directory的解决方法

    办公的笔记本上先装有qnxIDE的700环境 然后再用Eclipse 搭建了一个qnx710的环境 刚搭建完qnx710的时候是可以编译通过的 之后第二天再开机编译Eclipse 710就编译不过了 报错就是 error CreatePro
  • WiFi技术概述

    1 概述 WLAN是无线局域网络的简称 全称为Wireless Local Area Networks 是一种利用无线技术进行数据传输的系统 该技术的出现能够弥补有线局域网络之不足 以达到网络延伸之目的 Wi Fi是无线保真的缩写 英文全称
  • spring加载一个或者多个properties配置文件方法

    在项目中有些参数需要经常修改 或者后期需要修改 比如IP 调用别人的接口地址 数据库地址及帐号密码等 那么我们就不能把这些参数写死在代码里 虽然也可以在代码里改 但是如果是不懂代码的运维人员去现场部署项目又怎么改你的代码 那我们最好把这些参
  • 关于Discuz X3.2如何设置邮箱验证的具体方法

    原文地址 兔子酱老师好久没发文章了的 是因为最近在学习和熟悉Discuz社区程序 这个PHP程序是一木主编推荐给我的 妹子我简单操作了几下 很是喜欢 这个程序目前的版本是X3 2 带有很多好玩的功能 听说这个程序早几年被腾讯收购了的 所以
  • 控制疫情蔓延嵌入式物联网能帮大忙

    联合国所订定之永续发展目标之一 便是针对防治传染病的蔓延做好准备 在新型冠状病毒 COVID 19 流行期间 防疫已成为当前最重要目标 科技在对抗传染病方面扮演重要角色 而物联网 IoT 相关技术正是我们重要的防疫武器 降低成本 自发自主性
  • matlab 求单/多元函数极值

    matlab 求单 多元函数极值 单元函数极值 平时如果手算的话 就会先求导数 再求驻点 最终代值算出极值 如果用matlab代码求的话 就可以减少很多不必要的计算 fun inline 0 5 x exp x 2 ezplot fun 0
  • java复习第7天---7.4---IO流---递归、文件过滤器

    java复习第7天 7 4 IO流 递归 文件过滤器 目录 文章目录 1 递归 1 1 递归概述和分类 2 过滤器 后记 内容 1 递归 1 1 递归概述和分类 递归 在方法内调用自己 递归分类 递归分为直接递归和间接递归 直接递归 方法内
  • python的gzip库解压某一路径下的所有.gz文件

    今天 做机器学习 解压数据集的时候 参考大佬咯咯哒鸭的文章想到的方法 代码如下 encoding utf 8 Author Mr Pan 学狂 finish time 2022 2 15 import sys import gzip imp
  • 入门级题解5. 最长回文子串

    题目 给你一个字符串 s 找到 s 中最长的回文子串 思路 找到最小的那个字串 aba或者aa 然后向两边发散 伪代码 for 1 s length 第一种情况 if s i s i 1 aa bb cc形式 第二种情况 if s i 1
  • layui跨域问题

    由于浏览器存在同源策略 所以如果 layui 里面含图标字体文件 所在的地址与你当前的页面地址不在同一个域下 即会出现图标跨域问题 所以要么你就把 layui 与网站放在同一服务器 要么就对 layui 所在的资源服务器的 Response
  • JavaWeb中文件上传与下载

    JavaWeb中文件上传与下载 一 文件上传 1 文件上传的应用 比如个人信息的管理 上传头像 比如商品信息的管理 上传商品的图片 这些都需要通过浏览器客户端将图片上传到服务器的磁盘上 文件上传原理 所谓的文件上传就是服务器端通过reque
  • idea中连接mysql插入成功数据 在navicat中刷新表格没有数据_数据分析之路——sql入门...

    1 基础知识点 数据库 按照数据结构来组织 存储和管理数据的仓库 是一个长期存储在计算机内的 有组织的 可共享的 统一管理的大量数据的集合 关系型数据库 采用关系模型来组织数据的数据库 其以行和列的形式存储数据 以便于用户理解 多张表 各表
  • 0xc000007b的解决办法(续)

    最后更新 2021 3 1 请大家首先确定已经按照原文的方法及步骤尝试过 但是还是没有解决问题再来看这篇文章 如果你还没有看过原文 请先看原文 http blog csdn net VBcom article details 6070705
  • 基于ZYNQ的掌上超声成像系统前端设计与实现

    http www doc88 com p 6631786569315 html
  • LeetCode刷题——排序(python语言)

    LeetCode刷题 排序 python语言 一 排序 顾名思义 排序就是将数组按照从小到大的顺序排列 广义的排序分为内部排序方法和外部排序方法 排序的方法有很多种 常用的冒泡 选择 插入 希尔 归并 快速 堆 计数 桶 基数排序 按照时间
  • 尝试将RxJava和Retrofit

    http www jianshu com p 2b0aeb6b6b61 安卓学习 记住3点 现在安卓发展的足够成熟 遇到的需求 别人也遇到了 遇到的bug别人遇见过了 不要想着走捷径 这些留下的人 不一定靠技术 也许靠脸皮 所以只管学习 快
  • [洛谷 P3376] 网络最大流

    题目链接 题目描述 如题 给出一个网络图 以及其源点和汇点 求出其网络最大流 输入格式 第一行包含四个正整数 n n n m m m s
  • Redis——zset类型详解

    概要 zset是有序集合 将zset中的members引入一个属性score 根据这个属性值来进行排序 其中members不可以重复 score可以重复 按照字典序排序 默认按照升序排序 有序集合中提供指定分数和元素范围查找 计算成员排名功
  • grep中加单引号与不加引号的区别

    今天写命令时本想查找最后带标点的句子 结果发现不带引号时无法识别 grep n exp grep n exp 貌似不加单引号无法达到我们想要的效果 上网搜了一下 有人说是因为引号的作用 其实这在shell变量中就有介绍 明显的是 这里单引号