Xiaoxia[PG]

强大的sed

Linux、我的生活2 条评论

想把一堆函数函数名通过批处理,写成dummy函数。

例如,

Foo1

Foo2

经过处理后变为

void Foo1()
{
    printf("Foo1\n");
}
void Foo2()
{
    printf("Foo2\n");
}

这也不难,写段代码就可以解决。

但是,我不只一个文件要这么做,所以就要靠批处理了。

想起来伟大的sed,搜索了一下用法。写出下面代码:

for filename in *.c

do

echo "setting $filename"
echo -e "#include <sgos.h>\n"\
"#include <api.h>\n\
#include \"debug.h\"\n\
"> new/$filename
sed '/^$/d;s/^\(.*\)$/\
void \1()\
\{\
    NOT_IMPLEMENTED();\
    \}\
/' $filename >> new/$filename
done

保存文件,运行,问题解决。

运行前某文件内容:

SetLastError

GetLastError

SetErrorMode

运行后:

#include <sgos.h>
#include <api.h>
#include "debug.h"
void SetLastError()
{
    NOT_IMPLEMENTED();
}
void GetLastError()
{
    NOT_IMPLEMENTED();
}
void SetErrorMode()
{
    NOT_IMPLEMENTED();
}

2 条评论

  1. 有人吗 有事联系你 加我QQ838252

  2. 我留个邮箱给你联系吧: [email protected]

发表评论

评论会经过自动审核,链接请勿超过 3 个。