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

当grep中没有匹配项时,如何添加输出"non_assigned“?

当grep命令没有找到匹配项时,可以通过管道操作符(|)将grep命令的输出传递给另一个命令,使用该命令来添加输出"non_assigned"。具体的命令如下:

代码语言:txt
复制
grep "要匹配的内容" 文件名 | sed '1!b;s/^/non_assigned\n/'

这个命令使用了sed命令来在grep命令的输出前添加"non_assigned"。sed命令中的'1!b;s/^/non_assigned\n/'的含义如下:

  • '1!b'表示除了第一行之外的所有行都会被跳过(不做任何操作)。
  • 's/^/non_assigned\n/'表示在每一行的开头(^)插入"non_assigned"和一个换行符。

如果grep命令找到了匹配项,那么匹配项将被正常输出,没有匹配项的行将在输出中添加"non_assigned"。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Linux三剑客之grep,awk,sed命令必知必会

Linux中的Grep,Awk和Sed命令之间有什么区别? Grep命令用于查找文件中的特定模式,并输出包含搜索模式的所有结果。...它显示了特定的文件和匹配结果 linuxmi@linuxmi:~/www.linuxmi.com$ grep "linuxmi" * 要仅输出包含匹配模式的文件,我们使用“ -l” 如果您知道文件名可以输出所有匹配项...它使您能够以语句形式编写简单有效的程序,以在文件中搜索特定模式,并在找到匹配项时执行操作。 当使用' awk '时,我们将花括号括起来。 模式和动作都形成规则,整个awk程序都用单引号引起来。...如何在Linux中使用AWK命令 默认情况下,Awk命令用于打印文件的内容。在本例中,没有指定模式,因此操作应用于文件的每一行。...添加模式 大于的值的输出。

9.3K20

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

如果没有指定文件,fgrep命令假定标准输入。一般,找到的每行都复制到标准输出中去。如果不止一个输入文件,则在找到的每行前打印文件名。...-h:当多个文件被处理时隐藏文件名。 -i:当进行比较时忽略字母的大小写。 -l:只列出包含匹配行的文件名(一次)。文件名之间用换行符分隔。 n:将文件中每行的相对行号置于行前。...这在检查状态时很有用。 -v:显示除了匹配特定模式的行以外的所有行。 -w:执行单词搜索。 -x:显示匹配模式的行,要求无额外的字符。 -y:当进行比较时忽略字符的大小写。...此命令返回以下出口值: 0:找到匹配项。 1:未找到匹配项。 1:发现语法错误,或者文件不可访问(即使找到了匹配项)。...如果在您的C程序中一行中没有包含多于一个{(左括号)或者}(右括号),并且括号正确匹配,那么这两个数字将是一样的。

13310
  • Linux之fgrep命令

    如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。如果不止一个输入文件,则在找到的每行前打印文件名。...例如,如果同时指定 -l 和 -n ,只有文件名写入到标准输出中去。 命令语法 fgrep [选项][参数] 命令选项 -b:在找到的每行之前添加行所在的块编号。...-h:当多个文件被处理时隐藏文件名。 -i:当进行比较时忽略字母的大小写。 -l:只列出包含匹配行的文件名(一次)。文件名之间用换行符分隔。 n:将文件中每行的相对行号置于行前。...这在检查状态时很有用。 -v:显示除了匹配特定模式的行以外的所有行。 -w:执行单词搜索。 -x:显示匹配模式的行,要求无额外的字符。 -y:当进行比较时忽略字符的大小写。...命令返回值 0 找到匹配项。 1 未找到匹配项。 >1发现语法错误,或者文件不可访问(即使找到了匹配项)。

    65610

    Grep(Regex)中的正则表达式

    grep是Linux中用于文本处理的最有用和功能最强大的命令之一。 grep在一个或多个输入文件中搜索与正则表达式匹配的行,并将每条匹配的行写入标准输出。...在本文中,我们将探讨在grep的GNU版本中如何使用正则表达式的基础,大多数Linux操作系统默认情况下都提供此功能。 Grep正则表达式 正则表达式或正则表达式是与一组字符串匹配的模式。...GNU grep支持三种正则表达式语法,Basic,Extended和Perl兼容。 最简单的形式是,当没有给出正则表达式类型时,grep会将搜索模式解释为基本正则表达式。...^(脱字符号)符号与一行开头的空字符串匹配。 在以下示例中,仅当字符串“ linux”出现在行的开头时才匹配。 $grep '^linux' file.txt $(美元)符号与行首的空字符串匹配。...在搜索文本文件,编写脚本或过滤命令输出时,了解如何构造正则表达式将非常有帮助。

    2.8K40

    Linux 三剑客(1)- grep

    -E 的栗子 前提 当 grep 想同时过滤多个条件或操作 错误写法 默认不支持多条件匹配 ps -ef | grep "java|tomcat" 正确写法 ps -ef | grep -E "java...匹配控制选项参数 参数选项 描述 -e PATTERN 来进行匹配操作 -f 从文件中取得 PATTERN -i 忽略大小写 -v 反转匹配,选择没有被匹配到的内容 -w 匹配整词,精确地单词,单词的两边必须是非字符符号...(即不能是字母数字或下划线) -x 仅选择与整行完全匹配的匹配项 --line-buffered 有一个文件是动态的,它不断地添加信息到文件的尾部,而你想要输出包含某些信息的行。...文件和目录选项 参数选项 描述 -a 不忽略二进制的数据 -d 当要查找的是目录而非文件时,必须使用这项参数 -r 以递归方式读取每个目录下的所有文件; 这相当于-d recurse选项。...从文件中查找关键字 grep src test.txt 从文件中查找关键字并输出它的行号 grep -n src test.txt 从多个文件中查找关键字 grep src src.txt src1.

    77410

    Linux之fgrep命令

    如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。如果不止一个输入文件,则在找到的每行前打印文件名。...例如,如果同时指定 -l 和 -n ,只有文件名写入到标准输出中去。 命令语法 fgrep [选项][参数] 命令选项 -b:在找到的每行之前添加行所在的块编号。...-h:当多个文件被处理时隐藏文件名。 -i:当进行比较时忽略字母的大小写。 -l:只列出包含匹配行的文件名(一次)。文件名之间用换行符分隔。 n:将文件中每行的相对行号置于行前。...这在检查状态时很有用。 -v:显示除了匹配特定模式的行以外的所有行。 -w:执行单词搜索。 -x:显示匹配模式的行,要求无额外的字符。 -y:当进行比较时忽略字符的大小写。...命令返回值 0 找到匹配项。 1 未找到匹配项。 >1发现语法错误,或者文件不可访问(即使找到了匹配项)。

    1.8K00

    Linux之fgrep命令

    如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。如果不止一个输入文件,则在找到的每行前打印文件名。...例如,如果同时指定 -l 和 -n ,只有文件名写入到标准输出中去。 命令语法 fgrep [选项][参数] 命令选项 -b:在找到的每行之前添加行所在的块编号。...-h:当多个文件被处理时隐藏文件名。 -i:当进行比较时忽略字母的大小写。 -l:只列出包含匹配行的文件名(一次)。文件名之间用换行符分隔。 n:将文件中每行的相对行号置于行前。...这在检查状态时很有用。 -v:显示除了匹配特定模式的行以外的所有行。 -w:执行单词搜索。 -x:显示匹配模式的行,要求无额外的字符。 -y:当进行比较时忽略字符的大小写。...命令返回值 0 找到匹配项。 1 未找到匹配项。 >1发现语法错误,或者文件不可访问(即使找到了匹配项)。

    54510

    Linux常用命令03 - grep

    如果没有指定文件,grep 将从标准输入读取,这通常是另一个命令的输出。 在本文中,我们将通过实例和对最常见的 GNU grep 选项的详细说明,向您展示如何使用 grep 命令。 ?...当使用此选项时,grep 将搜索指定目录中的所有文件,递归地跳过遇到的符号链接。 若要跟踪所有符号链接,请使用-R 选项,而不是-r。...下面的示例演示如何在/etc 目录中的所有文件中搜索字符串 chasays.github.io: grep -r chasays.github.io /etc 输出将包括以文件的完整路径为前缀的匹配行:...当使用-rmr 调用 grep 时,不会打印该行,因为 Nginx 启用站点的目录中的文件是到 sites-available 目录中的配置文件的符号链接。...例如,当搜索没有任何选项的 Zebra 时,下面的命令不会显示任何输出,即有匹配的行: grep Zebra /usr/share/words 但是如果使用-i 选项执行不区分大小写的搜索,它将匹配大小写字母

    2K20

    vim 从嫌弃到依赖(21)——跨文件搜索

    但是到目前为止还没有介绍如何在工程目录中进行搜索,而这个功能是其他编辑器的基本功能。...-n 表示在输出的结果中显示行号。**/*.lua 表示在所有lua文件中进行搜索。我们可以看到,它输出了我们想要的结果。 我们该如何根据这个结果快速跳转到对应位置呢?...这里我们没有加上 -n 选项,但是它仍然显示了行号,vim默认自动为 grep 添加了 -n 选项。这些内容被存储在一个被称之为 quickfix 的列表中。可以通过这个列表快速跳转到对应的位置。...当我们通过 vim 来执行 :grep 命令的时候,grepprg 负责制定将要调用的 shell 命令。grepformat 决定如何来 :grep 命令的输出结果。...接下来我们来看看 vim是如何解析 :grep命令输出的。 grepformat中各种匹配格式是按照 ,来进行分割。也就是它定义了多组可能的输出格式,每组以 ,分割。

    1.1K30

    linux中grep如何排除过滤输出总结

    grep 是一种强大的命令行工具,用于在一个或多个输入文件中搜索与正则表达式匹配的行并将每个匹配的行写入标准输出。...如果要使用选项-E扩展正则表达式,则|不应转义运算符,如下所示: > grep -Ewv 'nologin|bash' /etc/passwd 你可以指定不同的可能匹配项,这些匹配项可以是文字字符串或表达式集...在以下示例中,字符串games出现在行首的行被排除在外: > grep -v "^games" file.txt 命令的输出可以grep通过管道过滤,只有匹配给定模式的行才会打印在终端上。...例如,要打印出系统上所有正在运行的进程,除了以用户root身份运行的进程,你可以过滤ps 命令的输出: > ps -ef | grep -wv root 排除目录和文件 有时,当使用-r或-R选项执行递归搜索时...这是一个示例,显示如何rumenz在内的所有文件中搜索字符串/etc,不包括/etc/pki目录: > grep -R --exclude-dir=pki rumenz /etc 要排除多个目录,请将排除的目录括在大括号中

    2.9K00

    linux中grep如何排除过滤输出总结

    grep 是一种强大的命令行工具,用于在一个或多个输入文件中搜索与正则表达式匹配的行并将每个匹配的行写入标准输出。...如果要使用选项-E扩展正则表达式,则|不应转义运算符,如下所示: > grep -Ewv 'nologin|bash' /etc/passwd 你可以指定不同的可能匹配项,这些匹配项可以是文字字符串或表达式集...在以下示例中,字符串games出现在行首的行被排除在外: > grep -v "^games" file.txt 命令的输出可以grep通过管道过滤,只有匹配给定模式的行才会打印在终端上。...例如,要打印出系统上所有正在运行的进程,除了以用户root身份运行的进程,你可以过滤ps 命令的输出: > ps -ef | grep -wv root 排除目录和文件 有时,当使用-r或-R选项执行递归搜索时...-r或-R选项之间的主要区别在于,当使用大写字母R调用 grep时,它将遵循所有符号链接 要从搜索中排除目录,请使用--exclude-dir选项。排除目录的路径是相对于搜索目录的。

    2.2K20

    学校早这么教正则表达式,少走多少弯路!那个分组用法震到我了

    引言 grep是Linux中用于文件处理的最有用和最强大的命令之一。 grep在一个或多个输入文件中搜索与正则表达式匹配的行,并将每个匹配的行写入标准输出。...在本文中,我们将探索如何在grep的GNU版本中使用正则表达式的基础知识,该版本在大多数Linux操作系统中默认可用。 ? grep的正则表达式 正则表达式(regex)是与一组字符串匹配的模式。...GNU grep 支持三种正则表达式语法:Basic、Extended和Perl兼容。 在其最简单的形式中,当没有给定正则表达式类型时,grep将搜索模式解释为基本正则表达式。...在GNU的grep实现中,基本正则表达式语法和扩展正则表达式语法之间没有功能差异。唯一的区别是,在基本正则表达式中,元字符?、+、{、|、(和)被解释为文字字符。...在搜索文本文件、编写脚本或筛选命令输出时,了解如何构造正则表达式非常有用。

    2.4K30

    常用 linux 命令集锦

    options可选参数: -i :忽略大小写 -c :打印匹配的行数 -l :从多个文件中查找包含匹配项 -v :查找不包含匹配项的行 -n:打印包含匹配项的行和行标 正则表达式参数...如果有很多 输出时,您可以通过管道将其转到'less'上阅读: $ grep magic /usr/src/Linux/Documentation/* | less 常见的示例有: grep Aug...3.less命令也可以分页显示文件,和more命令的区别就在于它支持上下键卷动屏幕,当结束浏览时,只要在less命令的提示符": "下按Q键即可。...文件分页显示,支持上下键卷动屏幕,当结束浏览时,只要在less命令的提示符": "下按Q键即可。...# 替换文件中的所有匹配项 sed -i 's/原字符串/替换字符串/g' filename 8.

    4.5K10

    Linux面试题整理

    每次安装Linux时都是默认帐户。 什么是LILO? LILO是Linux的引导加载程序。它主要用于将Linux操作系统加载到主内存中,以便它可以开始运行。 什么是BASH?...作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件(Shell 脚本)来完成这些日常工作任务。 如何规划一台 Linux 主机,步骤是怎样?...-print: find命令将匹配的文件输出到标准输出。 -exec: find命令对匹配的文件执行该参数所给出的shell命令。...当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。...grep 的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。

    90010

    egrep命令

    -H, --with-filename: 打印每个匹配项的文件名。 -h, --no-filename: 当搜索多个文件时,禁止在输出中使用文件名前缀。 --help: 显示帮助文件。...这使调用进程能够继续(恢复)搜索,当grep在NUM个匹配行之后停止时,它输出任何后面的上下文行。当-c或--count选项也被使用时,grep不会输出大于NUM的计数。...当-v或--invert match选项也被使用时,grep会在输出NUM个不匹配的行之后停止。 --mmap: 如果可能,使用mmap系统调用来读取输入,而不是默认的读取系统调用。...但是,如果在grep操作时输入文件收缩,或者发生I/O错误,那么--mmap可能会导致未定义的行为(包括核心转储)。 -n, --line-number: 在输出的每一行前面加上输入文件中的行号。...这将产生与在Unix机器上运行grep相同的结果,除非也使用-b选项,否则该选项无效。它对除MS-DOS和MS-Windows以外的平台没有影响。 -V, --version: 输出版本信息。

    1.4K10

    《鸟哥的linux私房菜》基本命令笔记

    必要时使用引号。当文件名与pattern一致时.返回真值.否则为假。 -type t 条件表达式,检查当前文件的类型是否是t。对目录讲,t值可以是d。...对前一项进行0次或1次重复匹配 {j} 对前一项进行j次重复匹配 {j,} 对前一项进行j次或更多次重复匹配 {,k} 对前一项最多进行k次重复匹配 {j,k} 对前一项进行j到k次重复匹配 s|t 匹配...s项或t项中的一项 (exp) 将exp作为单项处理 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符,包括换行 \d 匹配数字 \b 匹配单词的开始或结束 \W 匹配任意不是字母,数字,...在正则表达式中没有特殊的含义,故在vim 中当做字符查询时无需使用转义字符\ 进行转义, $ 需要转义。 grep ‘^#'  t1.txt  // 查找行首以 # 开始的一行 grep '!...注意 : 即使是后台进程,如果没有重定向输出且没有将日志打印在 log ,那还是会将输出和错误打印在标准输出. ./run.sh > run.log  2>&1 // 前台进程,重定向输出 .

    2.4K60

    【天枢系列 01】Linux行数统计:命令对决,谁才是王者?

    在使用 -m 选项时,wc 命令会尝试准确地统计文件中的字符数,但在某些情况下可能不准确,特别是当文件包含多字节字符(如 Unicode)时。...-l:仅显示包含匹配项的文件名,而不显示匹配的行。 -v:反转匹配,只显示不匹配的行。 -c:仅显示匹配的行数,而不显示具体匹配的内容。 -A NUM:显示匹配行及其后面的 NUM 行。...grep -r "pattern" /path/to/directory 4.显示匹配行的行号 grep -n "pattern" filename.txt 5.仅显示包含匹配项的文件名 grep -...其中,/匹配条件/ 是删除的条件。 sed '/匹配条件/d' 文件名 3.添加操作 这个命令将指定行后添加文本。a 表示添加操作,后面跟着要添加的文本内容。...特殊字符转义:当编辑命令中涉及到特殊字符时(如斜杠 /、引号 ' 等),需要进行适当的转义以确保命令的正确性。

    21110

    第二十章 : 正则表达式

    本质上,grep 程序会在文本文件中查找一个指定的正则表达式,并把匹配行输出到标准输出。...-v 不匹配。通常,grep 程序会打印包含匹配项的文本行。这个选项导致 grep 程序只会打印不包含匹配项的文本行。也可用--invert-match 来指定。...这个正则表达式“bzip”意味着,匹配项所在行至少包含4个字符,并且按照字符 “b”、“z”、 “i” 和 “p”的顺序出现在匹配行的某处,字符之间没有其它的字符。...一个相当直截了当的例子,我们把 echo 的输出管道给 grep,然后看到输出结果。当出现一个匹配项时,我们看到它会打印出来;当没有匹配项时,我们看到没有输出结果。...这里我们使用-v 选项来产生相反的匹配,因此我们将只输出不匹配指定表达式的文本行。这个表达式自身的两端都包含定位点(锚)元字符,是为了确保这个号码的两端没有多余的字符。

    39710

    Linux系统开发: 学习linux三剑客(awk、sed、grep)(上)

    -c 只计算显示符合范本样式的行数,不显示详细内容 -d 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作。...-o 只输出文件中匹配到的部分。 --color=auto 把匹配部分标记出来,要想当前终端后续使用都要标记匹配部分,可用alias命令重新封装grep。...#alias grep=’grep --color=auto’ 2.3 常用示例 在文件中查找内容 成功会输出所有包含查找内容的行,否则输出为空。...{}正则表达式:{m}表示匹配之前的项m次 {m,}表示匹配之前的项至少m次 {m,f}表示匹配之前的项m次到f次。m是可以为0的正整数。...:输出到标准输出STDOUT   满足模式:进行指定的模式操作,再输出到STDOUT 3、第二个特殊的内存空间 :保持空间(hold space),临时保存操作在另一处内存 4、当执行pattern space

    9.3K21
    领券