字符串与通配符比较

Nanor

我正在尝试检查文件的第一行和最后一行,以查看它是否包含某个字符串。该文件将遵循以下格式

HEADER 2016-11-7
...
TOTAL IS:    20938

我正在尝试检查第一行是否包含字符串,HEADER然后将其删除。我有:

#get first line of file
header=`head -n +1 rubbish.txt`

echo $header

#If first line contains header, remove it and ouput it to new file
case "HEADER" in
    *"$header"*) tail -n +2 rubbish.txt > rubbish.txt.out
    header="TRUE"
    ;;
    *) echo no HEADER present ;;
esac

输出:

HEADER 10-10-2019                                                                                                                                                                                                                                       
no HEADER present

为什么说没有标题?

杰夫·谢勒(Jeff Schaller)

因为您已将替换wordpattern您想要以下方面的东西:

...
case "$header" in
    HEADER*) tail -n +2 rubbish.txt > rubbish.txt.out
    header="TRUE"
    ;;
    *) echo no HEADER present ;;
esac
...

实现目标的另一种方法是sed仅在标题行存在的情况下才使用删除标题行(此处使用GNU-i扩展名进行就地编辑):

sed -i '1{/^HEADER/d}' rubbish.txt

$文件最后()行上可能存在的页脚行的类似示例

sed -i '${/^TOTAL IS:/d}'  rubbish.txt

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较带通配符的字符串

来自分类Dev

基于通配符的PHP字符串比较

来自分类Dev

Windows批处理文件-与通配符的字符串比较

来自分类Dev

Linux Shell脚本-带通配符的字符串比较

来自分类Dev

使用通配符将变量与字符串进行比较

来自分类Dev

我可以使用通配符比较字符串吗?

来自分类Dev

html中的角通配符字符串比较

来自分类Dev

使用通配符将变量与字符串进行比较

来自分类Dev

比较 bash awk 命令中的通配符字符串

来自分类Dev

如何在Shell脚本中将字符串与通配符字符串进行比较?

来自分类Dev

字符串中的通配符

来自分类Dev

比较字符串

来自分类Dev

访问VBA记录集字符串比较不适用于通配符

来自分类Dev

如何在批处理文件中执行通配符字符串比较

来自分类Dev

如何在bash中将两个相似的字符串与通配符进行比较?

来自分类Dev

将文件名与提供的模式进行比较,或者比较两个具有通配符的字符串

来自分类Dev

grep字符串中的multipe通配符

来自分类Dev

用通配符替换PowerShell字符串

来自分类Dev

用通配符替换字符串

来自分类Dev

Python在字符串中使用通配符

来自分类Dev

Prolog通配符,用于完成字符串

来自分类Dev

通配符字符串选择MySQL

来自分类Dev

从字符串中删除通配符

来自分类Dev

左熊猫与通配符字符串匹配

来自分类Dev

使用通配符替换字符串

来自分类Dev

字符串中的PHP通配符

来自分类Dev

字符串替换为通配符

来自分类Dev

字符串中的通配符替换

来自分类Dev

通配符`*`不能匹配某些字符串?