Linux脚本练习之script071-去掉所有包含this的句子

Posted 二木成林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux脚本练习之script071-去掉所有包含this的句子相关的知识,希望对你有一定的参考价值。

script071

题目

注:题目来源于 SHELL13 去掉所有包含this的句子

写一个 bash 脚本以实现一个需求,去掉输入中含有 this 的语句,把不含 this 的语句输出。

示例,假设输入如下:

that is your bag
is this your bag?
to the degree or extent indicated.
there was a court case resulting from this incident
welcome to nowcoder

你的脚本获取以上输入应当输出:

that is your bag
to the degree or extent indicated.
welcome to nowcoder

说明:你可以不用在意输出的格式,包括空格和换行

脚本一

grep "this" 命令会检索只包含 "this" 的行,而 -v 选项会显示相反的结果,即不包含 "this" 的行。

grep -v "this" nowcoder.txt

脚本二

使用 sed 命令的 d 选项删除包含 "this" 的行,显示的就只有包含 "this" 的行了。

sed '/this/d' nowcoder.txt

脚本三

awk '/this/' 表示匹配包含 "this" 的行,而 ! 表示非,即不包含 "this" 的行。

awk '!/this/' nowcoder.txt

脚本四

使用 awk 命令的 index() 函数查找每行 "this" 字符串出现没,如果没有出现则打印该行。

awk 'if(index($0,"this")==0) print $0' nowcoder.txt

脚本五

awk 命令的 !~ 表示不包含。$0!~/this/ 表示当前行($0)不包含(!~)指定正则表达式( /this/) 的匹配。

awk '$0!~/this/ print $0' nowcoder.txt

以上是关于Linux脚本练习之script071-去掉所有包含this的句子的主要内容,如果未能解决你的问题,请参考以下文章

Linux脚本练习之script073-去掉不需要的单词

Linux脚本练习之script073-去掉不需要的单词

Linux脚本练习之script002-自动将用户主目录下所有小于 5KB 的普通文件打包成 `xx.tar.gz`。

Linux脚本练习之script008-将个人用户下任意目录下所有文件的扩展名改为 `.bak`。

Linux脚本练习之script009- 写一个脚本,统计 `/etc/` 目录下共有多少文件和目录。

Linux脚本练习之script086-etstat练习之查看各个状态的连接数