version 1.2, 2006/03/04 10:43:38 |
version 1.5, 2020/10/03 08:24:14 |
|
|
/* $OpenXM: OpenXM/src/util/oxgreph.c,v 1.1 2006/03/04 07:48:12 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/util/oxgreph.c,v 1.4 2009/02/22 17:30:03 ohara Exp $ */ |
#include <stdio.h> |
#include <stdio.h> |
#include <stdlib.h> |
#include <stdlib.h> |
#include <string.h> |
#include <string.h> |
|
|
It greps files and outputs an html file to browse the files. |
It greps files and outputs an html file to browse the files. |
Keyword should be given in euc or utf-8 depending on the coding system of the files. |
Keyword should be given in euc or utf-8 depending on the coding system of the files. |
It does not add meta section of html file. |
It does not add meta section of html file. |
|
Locale must be "C" to use this program or use -f option to read keyword. |
|
|
Example: |
Example: |
|
export LC_ALL="C" |
s.txt contains "insubunkai" |
s.txt contains "insubunkai" |
oxgreph --sjis `cat s.txt` $OpenXM_HOME/doc/cfep/html-ja_JP.sjis/html-jp/*.html >t.html |
oxgreph "`nkf -w s.txt`" $OpenXM_HOME/doc/cfep/html-ja_JP.utf8/html-ja/*.html >t.html |
|
oxgreph --sjis "`nkf -s s.txt`" $OpenXM_HOME/doc/cfep/html-ja_JP.sjis/html-ja/*.html >t.html |
*/ |
*/ |
|
|
int Sjis = 0; |
int Sjis = 0; |
int LeaveTag = 0; |
int LeaveTag = 0; |
main(int argc, char *argv[]) { |
int main(int argc, char *argv[]) { |
int i,m,pid,n, cpos,start; |
int i,m,pid,n, cpos,start; |
char *com; |
char *com; |
char workf[256]; |
char workf[256]; |
Line 27 main(int argc, char *argv[]) { |
|
Line 30 main(int argc, char *argv[]) { |
|
char s[SSIZE]; |
char s[SSIZE]; |
char ss[SSIZE*2]; |
char ss[SSIZE*2]; |
FILE *fp; |
FILE *fp; |
|
int r; |
m = 256; |
m = 256; |
pid = getpid(); |
pid = getpid(); |
|
if (argc < 2) { |
|
fprintf(stderr,"oxgreph [--leaveTag] args_to_grep \n"); |
|
fprintf(stderr,"Note: LC_ALL should be C on some systems or use -f to give the pattern.\n"); |
|
fprintf(stderr,"Example 1: oxgreph \"`nkf -w s.txt`\" $OpenXM_HOME/doc/cfep/html-ja_JP.utf8/*.html >t.html\n"); |
|
fprintf(stderr,"Example 2: oxgreph -f s.txt $OpenXM_HOME/doc/cfep/html-ja_JP.utf8/*.html >t.html\n"); |
|
fprintf(stderr," The keyword is stored in s.txt.\n"); |
|
exit(0); |
|
} |
for (i=1; i<argc; i++) { |
for (i=1; i<argc; i++) { |
m += strlen(argv[i])+1; |
m += strlen(argv[i])+1; |
} |
} |
Line 45 main(int argc, char *argv[]) { |
|
Line 57 main(int argc, char *argv[]) { |
|
} |
} |
sprintf(workf,"/tmp/tmp-oxgreph-%d.txt",pid); |
sprintf(workf,"/tmp/tmp-oxgreph-%d.txt",pid); |
sprintf(&(com[strlen(com)]),">%s",workf); |
sprintf(&(com[strlen(com)]),">%s",workf); |
system(com); |
r=system(com); |
|
|
printf("<ol>\n"); |
printf("<ol>\n"); |
fp = fopen(workf,"r"); |
fp = fopen(workf,"r"); |
Line 82 main(int argc, char *argv[]) { |
|
Line 94 main(int argc, char *argv[]) { |
|
} |
} |
printf("</ol>\n"); |
printf("</ol>\n"); |
sprintf(com,"rm -f %s",workf); |
sprintf(com,"rm -f %s",workf); |
system(com); |
r=system(com); |
|
return 0; |
} |
} |