[BACK]Return to oxreplace.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / util

Diff for /OpenXM/src/util/oxreplace.c between version 1.6 and 1.7

version 1.6, 2009/02/15 01:31:51 version 1.7, 2011/05/02 06:39:51
Line 1 
Line 1 
 /* $OpenXM: OpenXM/src/util/oxreplace.c,v 1.5 2005/07/03 08:27:38 ohara Exp $ */  /* $OpenXM: OpenXM/src/util/oxreplace.c,v 1.6 2009/02/15 01:31:51 takayama Exp $ */
 /* cf. fb/src/misc/nan-tfb2.c */  /* cf. fb/src/misc/nan-tfb2.c */
 #include <stdio.h>  #include <stdio.h>
 #include <stdlib.h>  #include <stdlib.h>
 #include <string.h>  #include <string.h>
 #include <time.h>  #include <time.h>
 int ReplaceLine=0;  int ReplaceLine=0;
   int Verbose=0;
   
 char *readAsString(FILE *fp) {  char *readAsString(FILE *fp) {
   static char *s = NULL;    static char *s = NULL;
Line 12  char *readAsString(FILE *fp) {
Line 13  char *readAsString(FILE *fp) {
   int p = 0;    int p = 0;
   char *s2;    char *s2;
   int c;    int c;
     if (fp == NULL) { s=NULL; return(NULL); }
   if (s == NULL) {    if (s == NULL) {
     s = (char *) malloc(size);      s = (char *) malloc(size);
     if (s == NULL) {      if (s == NULL) {
Line 79  main(int argc, char *argv[]) {
Line 81  main(int argc, char *argv[]) {
   int i;    int i;
   char *old = NULL;    char *old = NULL;
   char *new = NULL;    char *new = NULL;
     FILE *fp;
   if (argc < 2) {usage(); exit(0); }    if (argc < 2) {usage(); exit(0); }
   for (i=1; i<argc; i++) {    for (i=1; i<argc; i++) {
         if (strcmp(argv[i],"--old") == 0) {          if (strcmp(argv[i],"--old") == 0) {
Line 94  main(int argc, char *argv[]) {
Line 97  main(int argc, char *argv[]) {
     } else if (strcmp(argv[i],"--f") == 0) {      } else if (strcmp(argv[i],"--f") == 0) {
           fprintf(stderr,"--f option (rule file) has not yet been implemented.\n");            fprintf(stderr,"--f option (rule file) has not yet been implemented.\n");
           exit(10);            exit(10);
           } else if (strcmp(argv[i],"--newfile")==0) {
             fp = fopen(argv[i+1],"r"); i++;
             if (fp == NULL) {
                   fprintf(stderr,"Error: File %s is not found\n",argv[i]); exit(10);
             }
         new = readAsString(fp); fclose(fp); readAsString(NULL);
           } else if (strcmp(argv[i],"--verbose")==0) {
         Verbose = 1;
         }else {          }else {
           if ((old != NULL) && (new != NULL)) {            if ((old != NULL) && (new != NULL)) {
                 replaceOneWord(argv[i],old,new);                  replaceOneWord(argv[i],old,new);
           }else{            }else{
                 fprintf(stderr,"--old and --new option or --f option are not given.\n");                  fprintf(stderr,"--old and --new option or --newfile or --f option are not given.\n");
                 usage();                  usage();
                 exit(10);                  exit(10);
           }            }
Line 175  replaceOneWord(char *fname,char *old, char *new) {
Line 186  replaceOneWord(char *fname,char *old, char *new) {
   
   
 usage() {  usage() {
   fprintf(stderr,"oxreplace [--old oword --new nword --f rule_file_name --replaceLine] \n");    fprintf(stderr,"oxreplace [--old oword [--new nword | --newfile filename] --f rule_file_name --replaceLine] \n");
   fprintf(stderr,"          [file1 file2 ... ] \n");    fprintf(stderr,"          [file1 file2 ... ] \n");
   fprintf(stderr,"    Use --oldx or --newx to give a word in hexadecimal codes\n");    fprintf(stderr,"    Use --oldx or --newx to give a word in hexadecimal codes\n");
 }  }

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>