📄 msgdb.c
字号:
#include <u.h>#include <libc.h>#include <bio.h>#include "msgdb.h"voidusage(void){ fprint(2, "usage: msgdb [-c] file\n"); exits("usage");}voidmain(int argc, char **argv){ int create = 0; Msgdb *db; char *tok, *p; long val; int input; Biobuf b; input = 0; ARGBEGIN{ case 'c': create = 1; break; case 'i': input = 1; break; default: usage(); }ARGEND if(argc != 1) usage(); if((db = mdopen(argv[0], create)) == nil) sysfatal("open db: %r"); if(input){ Binit(&b, 0, OREAD); while((tok = Brdline(&b, '\n')) != nil){ tok[Blinelen(&b)-1] = '\0'; p = strrchr(tok, ' '); if(p == nil) val = mdget(db, tok)+1; else{ *p++ = 0; val = atoi(p); } mdput(db, tok, val); } }else{ mdenum(db); Binit(&b, 1, OWRITE); while(mdnext(db, &tok, &val) >= 0) Bprint(&b, "%s %ld\n", tok, val); Bterm(&b); } mdclose(db); exits(nil);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -