首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【linux命令讲解大全】071. 快速搜索文本内容的工具——fgrep

fgrep 为文件搜索文字字符串 补充说明 fgrep命令是用来搜索file参数指定的输入文件(缺省为标准输入)的匹配模式的。fgrep命令特别搜索Pattern参数,它们是固定字符串。...如果在File参数中指定一个以上的文件,fgrep命令将显示包含匹配的文件。 fgrep命令与grep和egrep命令不同,因为它搜索字符串而不是搜索匹配表达式的模式。...因为这些字符对于shell有特定的含义,完整的字符串应该加上单引号' ... '。如果没有指定文件,fgrep命令假定标准输入。一般,找到的每行都复制到标准输出中去。...如果在您的C程序中一没有包含多于一个{(左括号)或者}(右括号),并且括号正确匹配,那么这两个数字将是一样的。...如果这两个数字不一样,您可以将包含括号的按照他们在文件位置顺序显示出来,使用以下命令: egrep '{|}' pgm.c 显示包含某模式的文件名: fgrep -l strcpy *.c 搜索当前目录下以

9810

Linux之fgrep命令

为文件搜索文字字符串,fgrep命令 是用来搜索 file 参数指定的输入文件(缺省为标准输入)的匹配模式的。fgrep 命令特别搜索 Pattern 参数,它们是固定字符串。...如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配的文件。 fgrep 命令于 grep 和 egrep 命令不同,因为它搜索字符串而不是搜索匹配表达式的模式。...因为这些字符对于 shell 有特定的含义,完整的字符串应该加上单引号' ... '。. 如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。...计数匹配某模式的行数 > fgrep -n "{" rumenz.txt 1:one{ 如果在您的 C 程序中一没有包含多于一个 { (左括号) 或者 } (右括号),并且括号正确匹配,那么这两个数字将是一样的...如果这两个数字不一样,您可以将包含括号的按照他们在文件位置顺序显示出来,使用以下命令: > egrep {\|} rumenz.txt one{ } 显示包含某模式的文件名: > fgrep -

53910
您找到你想要的搜索结果了吗?
是的
没有找到

Linux之fgrep命令

为文件搜索文字字符串,fgrep命令 是用来搜索 file 参数指定的输入文件(缺省为标准输入)的匹配模式的。fgrep 命令特别搜索 Pattern 参数,它们是固定字符串。...如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配的文件。 fgrep 命令于 grep 和 egrep 命令不同,因为它搜索字符串而不是搜索匹配表达式的模式。...因为这些字符对于 shell 有特定的含义,完整的字符串应该加上单引号' ... '。. 如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。...计数匹配某模式的行数 > fgrep -n "{" rumenz.txt 1:one{ 如果在您的 C 程序中一没有包含多于一个 { (左括号) 或者 } (右括号),并且括号正确匹配,那么这两个数字将是一样的...如果这两个数字不一样,您可以将包含括号的按照他们在文件位置顺序显示出来,使用以下命令: > egrep {\|} rumenz.txt one{ } 显示包含某模式的文件名: > fgrep -l

1.7K00

Linux之fgrep命令

为文件搜索文字字符串,fgrep命令 是用来搜索 file 参数指定的输入文件(缺省为标准输入)的匹配模式的。fgrep 命令特别搜索 Pattern 参数,它们是固定字符串。...如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配的文件。 fgrep 命令于 grep 和 egrep 命令不同,因为它搜索字符串而不是搜索匹配表达式的模式。...因为这些字符对于 shell 有特定的含义,完整的字符串应该加上单引号' ... '。. 如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。...计数匹配某模式的行数 > fgrep -n "{" rumenz.txt 1:one{ 如果在您的 C 程序中一没有包含多于一个 { (左括号) 或者 } (右括号),并且括号正确匹配,那么这两个数字将是一样的...如果这两个数字不一样,您可以将包含括号的按照他们在文件位置顺序显示出来,使用以下命令: > egrep {\|} rumenz.txt one{ } 显示包含某模式的文件名: > fgrep -l

65310

Linux命令技巧分享:Bash Heredoc 使用示例

在Bash和其他类似Zsh的shell,Here document(Heredoc)是一种重定向,允许您将多行输入传递给命令。...如果分隔标识符未加引号,则在将here-document传递给命令之前,shell将替换所有变量,命令和特殊字符。 将减号添加到重定向运算符<<  - 将导致忽略所有前导制表符。...这允许您在此处写入时使用缩进 -  shell脚本的文档。 不允许使用前导空白字符,只允许使用制表符。...here-document块可以包含字符串,变量,命令和任何其他类型的输入。 最后一以分隔标识符结束。分隔符前的空白是不允许的。...总结 在本指南中,您已经了解了什么是heredoc以及如何在shell脚本中使用它。

1.8K30

Linux正则匹配详解

正则字符简单介绍 元字符介绍 "^": ^会匹配或者字符串的起始位置,有时还会匹配整个文档的起始位置. "$": $会匹配字符串的结尾...."\b": 不会消耗任何字符只匹配一个位置,常用于匹配单词边界 我想从字符串"This is Regex"匹配单独的单词 "is" 正则就要写成 "\bis\b",\b 不会匹配is 两边的字符,...占有,”+" 占有量词会覆盖事个目标字符串,然后尝试寻找匹配内容,但它只尝试一次,不会回溯,就好比先抓一把石头,然后从石头中挑出黄金....,否则当做变量使用,$1=="ipaaad" awk的for循环为C-Style即为for(),区别于shell的for i in ... awk可以使用多个分隔符,要封装在方括号里,用'‘包围,...以防shell对他们进行解释,awk -F '[:/t]',使用空格,冒号,tab作为分隔符 next语句: 从输入文件取得下一个输入行,在awk命令表顶部重新执行命令,一般用于跳过一些特殊的 awk

11.7K20

2024年3月份最新大厂运维面试题集锦(运维15-20k)

Shell脚本的第一通常是什么?为什么重要? 答案: Shell脚本的第一通常是#!/bin/bash或其它Shell的路径,这行被称为shebang。它告诉操作系统使用哪个解释器来执行脚本。...如何在Shell脚本重定向输出和输入? 答案: 使用>将命令的输出重定向到文件,如果文件已存在,则覆盖。 使用>>将命令的输出追加到文件。...答案: 子Shell是当前Shell的一个独立副本,它继承了父Shell的环境(变量等),但任何在Shell做出的更改(变量赋值)不会影响父Shell。...如何在Shell脚本操作字符串?...解释如何在Shell脚本处理文件和目录。 答案: Shell脚本提供了多种处理文件和目录的命令,cp(复制)、mv(移动)、rm(删除)、mkdir(创建目录)等。

1.3K10

MySQL面试题集锦,据说国内外知名互联网公司都在用!

REGEXP是模式匹配,其中匹配模式在搜索值的任何位置。 11、CHAR和VARCHAR的区别?...18、如何使用Unix shell登录MySql?...每当被更改时,时间戳字段将获取当前时间戳。 25、列设置为AUTO INCREMENT时,如果在达到最大值,会发生什么情况? 它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。...、LIKE声明的%和_是什么意思? %对应于0个或更多字符,_只是LIKE语句中的一个字符。 29、如何在Unix和MySQL时间戳之间进行转换?...36、我们如何在mysql运行批处理模式? 37、MyISAM表格将在哪里存储,并且还提供其存储格式? 38.、MySQL中有哪些不同的表格? 39、ISAM是什么? 40、InnoDB是什么?

2K00

MySQL面试题集锦,据说国内外知名互联网公司都在用!

REGEXP是模式匹配,其中匹配模式在搜索值的任何位置。 11、CHAR和VARCHAR的区别?...18、如何使用Unix shell登录MySql?...每当被更改时,时间戳字段将获取当前时间戳。 25、列设置为AUTO INCREMENT时,如果在达到最大值,会发生什么情况? 它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。...、LIKE声明的%和_是什么意思? %对应于0个或更多字符,_只是LIKE语句中的一个字符。 29、如何在Unix和MySQL时间戳之间进行转换?...36、我们如何在mysql运行批处理模式? 37、MyISAM表格将在哪里存储,并且还提供其存储格式? 38.、MySQL中有哪些不同的表格? 39、ISAM是什么? 40、InnoDB是什么?

1.8K00

Shell 变量

shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行. ---- Shell 字符串 字符串shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了...单引号 str='this is a string' 单引号字符串的限制: 单引号里的任何字符都会原样输出,单引号字符串的变量是无效的; 单引号字串不能出现单引号(对单引号使用转义符后也不行)。...: string="xiaogongjiang is a monkey coder" echo ${string:1:4} # 输出 iaog 查找子字符串 查找字符 “i 或 s” 的位置: string...[*]} # 取得数组单个元素的长度 lengthn=${#array_name[n]} Shell 注释 以”#”开头的就是注释,会被解释器忽略。...-------------------------------- ##### 用户配置区 开始 ##### # # # 这里可以添加脚本描述信息 # # ##### 用户配置区 结束 ##### 如果在开发过程

2.1K40

Shell 语法

运行shell时,会同时存在三种变量: 1) 局部变量 局部变量在脚本或命令定义,仅在当前shell实例中有效, 其他shell启动的程序不能访问局部变量。...定义字符串: 单引号 str='this is a string' 单引号字符串的限制: 单引号里的任何字符都会原样输出,单引号字符串的变量是无效的; 单引号字串不能出现单引号(对单引号使用转义符后也不行...查找子字符串 查找字符 "i 或 s" 的位置: string="runoob is a great company" echo `expr index "$string" is` # 输出 8 注意...Shell 注释 以"#"开头的就是注释,会被解释器忽略。 sh里没有多行注释,只能每一加一个#号。...-------------------------------- ##### 用户配置区 开始 ##### # # # 这里可以添加脚本描述信息 # # ##### 用户配置区 结束 ##### 如果在开发过程

63910

无名寄存器

",将被删除的内容存储到无名寄存器,然后在第二对应位置执行 p (或者P) 命令取出无名寄存器的内容。...这里在使用h 移动光标之后,光标所在位置在后一个引号的位置,为了减少一次光标移动,我直接使用P 在光标所在位置之前进行粘贴操作。...例如使用 "+yy将内容复制到系统剪切板,供其他程序使用。 但是在有好的shell工具的加持下,我更喜欢用这样的方式直接粘贴一大段文字到vim。...或者配合vim的可视模式,直接使用shell的快捷键从vim粘贴选中的内容到系统剪切板 表达式寄存器 前面介绍的几种寄存器都是被动的存储静态的内容,只有存储功能。...yi"来复制引号内的内容,但是如果在第二先使用 ci"再使用 p进行粘贴的话会发现粘贴的仍然是hello vim这是因为后面使用c操作的时候,已经将原来的给覆盖掉了。

85710

shell基础 — 基本语法

/tmp/tmpfile_$$ 3) 位置参数变量   位置参数变量主要用来向脚本传递参数或数据,变量名不能自定义,变量作用也是固定的。...主要有以下几种位置参数变量: 位置参数变量 描述 $1、$2、… 脚本程序的参数,分别代表程序的第1个参数、第2个参数、… 程序第10个以上的参数需要用大括号包含, ${10} $* 代表命令行的所有参数...一般来说,采用 4) 预定义变量   预定义变量是在 bash 已经定义好了的变量,变量名不能自定义,变量作用也是固定的。实际上,位置参数变量就是预定义变量的一种。...三、使用 bash 计算器在shell脚本中进行浮点运算   可以发现,bash 的基本算术运算只支持整数运算,要进行浮点运算的话,需要另寻方法,bash 计算器就是处理浮点运算的一个常见方案。...# 退出码为 0 exit 0   需要注意的是,如果在编写代码时,变量没有加上双引号,上述程序的结果又会不同,仅对 val3 进行取值,将会忽略该字符串的空格,则第三个表达式的退出码将为 0

3.3K30

Linux 命令行操作和文件管理

1 Linux的命令行操作 1.1 Shell Linux的命令行界面常被称为Shell。...提到Shell一般情况下特指后者,命令行式的用户界面。 1.2 Linux的命令格式 熟悉Linux的用户,几乎都使用命令行管理系统。...值得注意的是:在Linux,路径开头的“/”表示根目录,以“/”开头的路径称为绝对路径,是指文件或文件夹相对于根目录“/”的位置;不以“/”开头的路径称为相对路径,是文件或文件夹相对于当前目录为的位置...tail 作用:查看文件结尾内容 tail [-参数选项] 文件名称 常用选项: 选项 说明 -f 监视File文件增长,文件更新,终端也将动态更新 -n [rows] 后跟行数参数,从倒数第rows位置读取制定文件的内容...(9)替换字符:r 取代光标所在处字符、R 从光标所在处开始替换字符 (10)搜索替换:/string 向前搜索指定的字符串(需要忽略大小写则 :set ic),然后输入 n  搜索指定字符串的下一个出现位置

1.9K30

07-1透过shell看世界——扩展

\f: 换行,但是换行后的新的开头位置连接着上一的行尾,具体效果查看示例; \v: 与\f相同; \t: 转以后表示插入tab,即制表符...echo -e "123\f456" echo -e "abc\f456\f520" # "\f"转移符表示换行,但是换行后的新的开头位置连接着上一的行尾,第2个例子中有两个"\f"。...上图中的第一个示例,"\r"后面的abc覆盖了123,45没有被覆盖; 第二个示例,因为abc一共有3个字符,123也是有3个字符,所以abc覆盖了123以后,只剩下了abc; 第三个示例,1只有一个字符...,覆盖以后只剩下abc;第四个示例,"\r"后面并不存在任何字符,所以"\r"前面 的字符没有被覆盖。...2.波浪线扩展 复习之前对 cd 命令的介绍, cd~username 会将工作目录改变为 username 的主目录。你会发现波浪线字符(~)具有特殊含义。

77720

shell学习教程(超详细完整)

位置参数变量: 这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的。 预定义变量: 是Bash已经定义好的变量,变量名不能自定义,变量作用也是固定的。...: 位置参数变量 作用 $n n为数字,$0表示当前 Shell 脚本程序的名称,$1- 9 代 表 第 一 到 第 九 个 参 数 , 十 以 上 的 参 数 需 要 用 大 括 号 包 含 , ...,awk,^则是匹配字符串的开始 ^tux匹配以tux开头的 $ 匹配行尾,awk,$则是匹配字符串的结尾 tux$匹配以tux结尾的 ....~B 判断字符串A是否不包含能匹配B表达式的子字符串 正则表达式 /正则/ 如果在”//”可以写入字符,也可以支持正则表达式 BEGIN BEGIN是awk的保留字,是一种特殊的条件类型。...通过这个实验,大家可以发现,虽然awk是列提取命令,但是也要按来读入的。这个命令的执行过程是这样的: 1)如果有BEGIN条件,则先执行BEGIN定义的动作。

6K20

Python学习笔记(二)

如果想具体查看某个 BIF 的功能,比如 input(),可以在 shell 输入 help(input),就会得到这个 BIF 的功能描述。哦,答案应该是 68 个。...不过 Python 会帮助解决可能因此出现的问题,例如只有当标识符已经赋值后( Python 的变量是不用先声明的)才能在代码中使用,未赋值的标识符直接使用会导致运行时错误,所以你很快就可以根据经验发现此问题...在 Python 里对待缩进代码要十分小心,如果没有正确地缩进,代码所做的事情可能和你的期望相去甚远(就像C语言里边括号打错了位置)。...如果在正确的位置输入冒号“:”,IDLE 会自动将下一缩进! 什么是“拼接”?...在一些编程语言,我们可以将两个字符串“相加”在一起,:'I' + 'Love' + 'U' 会得到 'ILoveU',在 Python 里,这种做法叫做拼接字符串

70070

Linux上写一个进度条小程序

打印完之后,shell 提示符紧跟着字符串后显示。...,光标一直停留在该打印字符串的一 sleep 函数休眠三秒后,shell 提示符直接打印在了屏幕上。...sleep 睡眠后,当程序退出,shell 打印提示符时,就覆盖字符串。 拓展 : 数据真的是临时保留在缓冲区里的吗?光标如何理解?...fflush 主动刷新缓冲区后,数据就显示在了屏幕上;且因为 ‘\r’ 的原因,光标指向字符串开头;当打印 shell 提示符时,就直接从光标位置开始覆盖。...倒计时就是在屏幕上不断显示数字,每次在同一位置显示,并将之前的数据覆盖。 既然是每次要从头开始覆盖,那么就可以用 ‘\r’ 来实现每次回到首,并且可以通过相应的格式化控制显示多位打印。

1.6K10

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券