我需要编写一个 shell 脚本,该脚本将在我的 .c 文件中输入一个字符串,然后匹配一个相当复杂的模式。
模式是:)\n{
,
\n
和之间没有任何制表符/空格{
。也就是说,我想与{
位于文件第一列中的 a 匹配(这是为了仅与)\n{
C 中的以下函数声明匹配,而不是与循环或条件后面的声明匹配)。
void some_function_declaration(char var1, char var2)
{
我已经阅读了手册、论坛,但仍然无法找到正确的方法来编写模式以匹配或找到相应的正则表达式。相应的输出将是:
void some_function_declaration(char var1, char var2)
{ time_exe(__func__, cl(clock()));
rest of the function...
以下是我到目前为止提出的但不起作用的内容。
试试 1
sed -i '' '/)$\n{/a time_exe(__func__, cl(clock()));' >> list_func2.c
试试 2
sed -i '' '/)\n{ /a time_exe(__func__, cl(clock()));' >> list_func2.c
尝试 3
sed -i '' '/)/\n{/a time_exe(__func__, cl(clock()));' >> list_func2.c
我很高兴听到您对此事的建议。