打印/提取 changelog.md 特定部分,使代码不区分大小写

问题描述

到现在为止我已经写了

awk 's{ print ""; print}; $0~v {print; s=1; next}; s=0' RS= v=4.0.74 Chnagelog.md

这很好用,但现在,我有疑问。如果我想使用不区分大小写的文件名。假设不是在较低的文件名中给出文件名,而是以全部大写或驼峰形式写入文件名,那么此脚本将不起作用。 如何修改此 awk 脚本以采用不区分大小写的文件名?

解决方法

大多数操作系统都区分大小写的文件名和文件名的差异 被视为不同的文件。如果您确定这一点,请尝试与 bash 组合使用:

#!/bin/bash

for f in *.md; do
    if [[ ${f,} = "changelog.md" ]]; then
        awk 's{ print ""; print}; $0~v {print; s=1; next}; s=0' RS= v=4.0.74 "$f"
    fi
done

我认为更好的解决方案是修复文件名。

,

另一种方法是在 awk 中使用 grep -i:

srand(time(0)); // Called only once,probably in main

char words[3][6] { // Possibly const // Possibly std::vector<std::string>
    {'b','a','t','m','n'},{'k','i','l','e','r'},{'b','u','y'}
};

int num = rand() % 3;
auto& word = words[num]; // char (&word)[6] = words[num];

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...