home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 3 / Meeting_Pearls_III.iso / Pearls / text / FAQ / bonus / faq_deldouble.rexx < prev    next >
OS/2 REXX Batch file  |  1995-09-09  |  3KB  |  81 lines

  1. /*  ARexx Skript
  2.     analyses text of files created by faq_report.rexx
  3.     $VER: faq_seperate.rexx 0.1 (16.08.95) ©1995 Khamsonh Marcel Khounlivong
  4.     */
  5.  
  6. PARSE ARG list
  7.  
  8. OPTIONS RESULTS
  9.  
  10. list = Strip(list)
  11. IF (list == "") THEN DO
  12.     SAY "faq_seperate.rexx ©1995 Khamsonh Marcel Khounlivong"
  13.     SAY "usage: faq_seperate[.rexx] list"
  14.     EXIT 0
  15.     END
  16.  
  17. fix     = "news.answers/ news.answers_0708b/ sci.answers/ soc.answers/ rec.answers/ comp.answers/"
  18.  
  19. archive = 1
  20. date    = 2
  21. faq     = 3
  22.  
  23. string.2 = string.1 = ""
  24.  
  25. CALL AddLib('rexxsupport.library',5,-30)
  26.  
  27. IF Open(input,list,r) THEN DO
  28.     DO WHILE (~Eof(input))
  29.  
  30.         string.2    = ReadLn(input)
  31.         sarchive.2  = Strip(Word(string.2,archive))
  32.         sdate.2     = Strip(Word(string.2,date))
  33.         sfaq.2      = Strip(Word(string.2,faq))
  34.  
  35.         IF (sarchive.2 == sarchive.1) THEN DO
  36.             SELECT
  37.                 WHEN (sdate.2 < sdate.1) THEN DO
  38.                     SAY 'Time-Delete' sfaq.2  '<<' sfaq.1 '('sarchive.2')'
  39.                     CALL Delete(sfaq.2)
  40.                     END
  41.                 WHEN (sdate.2 > sdate.1) THEN DO
  42.                     SAY 'Time-Delete' sfaq.1 '<<' sfaq.2  '('sarchive.1')'
  43.                     CALL Delete(sfaq.1)
  44.                     END
  45.                 OTHERWISE DO
  46.                     check.1 = check.2 = 0
  47.                     DO i = 1 FOR Words(fix)
  48.                         IF (Pos(Word(fix,i),sfaq.1) ~= 0) THEN DO
  49.                             check.1 = WordIndex(fix,i)
  50.                             LEAVE i
  51.                             END
  52.                         END
  53.                     DO i = 1 FOR Words(fix)
  54.                         IF (Pos(Word(fix,i),sfaq.2) ~= 0) THEN DO
  55.                             check.2 = WordIndex(fix,i)
  56.                             LEAVE i
  57.                             END
  58.                         END
  59.                     IF ((check.1 ~= 0) & (check.2 ~= 0)) THEN DO
  60.                         IF (check.2 < check.1) THEN DO
  61.                             SAY 'Name-Delete' sfaq.2 '<<' sfaq.1 '('sarchive.2')'
  62.                             CALL Delete(sfaq.2)
  63.                             END
  64.                         ELSE IF (check.2 > check.1) THEN DO
  65.                             SAY 'Name-Delete' sfaq.1  '<<' sfaq.2 '('sarchive.2')'
  66.                             CALL Delete(sfaq.1)
  67.                             END
  68.                         END
  69.                     ELSE SAY "?" sfaq.1 '-' sfaq.2 '('sarchive.2')'
  70.                     END
  71.                 END
  72.             END
  73.  
  74.         sarchive.1  = sarchive.2
  75.         sdate.1     = sdate.2
  76.         sfaq.1      = sfaq.2
  77.  
  78.         END
  79.     CALL Close(input)
  80.     END
  81.