;;; ;;; ;;;> Author: Henry C. Francis ;;;> 425 N. Ashe St. ;;;> Southern Pines, NC 28387 ;;;> http://paracadd.com ;;;> All rights reserved. ;;; ;;;> COPYRIGHT: 1/19/94 ;;;> EDITED: 11-08-2005 ;;; (DEFUN c:backup (/ fp1 fp2 item1 item2 item3 rstr) (SETQ dir_lst nil) (IF CHECK_FOR_DOSLIB NIL (LOAD "CHECK_FOR_DOSLIB" "\nFile CHECK_FOR_DOSLIB.LSP not loaded! ")) (CHECK_FOR_DOSLIB) ;;; (IF DOS_HELP ;;; nil ;;; (ARXLOAD "doslib14") ;;; ) ;_ end of if (SETQ dwgspec (STRCAT (GETVAR "dwgprefix") (GETVAR "dwgname"))) (SETQ spec_lst (DOS_SPLITPATH dwgspec)) ;;; (IF (AND DOS_USERNAME (DOS_USERNAME)) ;;; (IF (OR (EQ (STRCASE (DOS_USERNAME)) "GARCIAJS") ;;; (EQ (STRCASE (DOS_USERNAME)) "STRAWNSL") ;;; ) ;_ end of or ;;; (SETQ bkupdrv "D:") ;;; (SETQ bkupdrv "C:") ;;; ) ;_ end of if (SETQ bkupdrv "C:") ;;; ) ;_ end of if (SETQ strndx 1) (SETQ dwg_drv (NTH 0 spec_lst) dwg_dir (IF (> (STRLEN (NTH 1 spec_lst)) 2) (SUBSTR (NTH 1 spec_lst) 2 (- (STRLEN (NTH 1 spec_lst)) 2) ) ;_ end of substr "" ) ;_ end of if dwg_name (NTH 2 spec_lst) dwg_prfx (NTH 3 spec_lst) ) ;_end_setq (WHILE (WCMATCH dwg_dir "*\\*") (WHILE (WCMATCH (SUBSTR dwg_dir strndx) "*\\*") (SETQ strndx (1+ strndx)) ) ;_ end of while (IF dir_lst (SETQ dir_lst (APPEND (LIST (SUBSTR dwg_dir strndx)) dir_lst)) (SETQ dir_lst (LIST (SUBSTR dwg_dir strndx))) ) ;_ end of if (SETQ prevndx (- strndx 2)) (SETQ strndx 1) (SETQ dwg_dir (SUBSTR dwg_dir 1 prevndx)) ) ;_ end of while (IF (AND (/= (NTH 1 spec_lst) "") (/= (NTH 1 spec_lst) "\\")) (IF dir_lst (SETQ dir_lst (APPEND (LIST (SUBSTR dwg_dir strndx)) dir_lst)) (SETQ dir_lst (LIST (SUBSTR dwg_dir strndx))) ) ;_ end of if (SETQ dir_lst nil) ) ;_ end of if (DOS_DRIVE bkupdrv) (DOS_MKDIR "Backups") (DOS_CHDIR "\\Backups") (FOREACH n dir_lst (DOS_MKDIR n) (DOS_CHDIR n) ) ;_ end of foreach (SETQ from_file (STRCAT dwg_drv (NTH 1 spec_lst) dwg_name ".dwg")) (SETQ found_from (FINDFILE from_file)) (SETQ to_file (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (COND ((AND (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of FINDFILE (< (CDAR (DOS_FILEDATE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak"))) (- (GETVAR "cdate") 0.01) ) ;_ end of < (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of FINDFILE (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") ) ;_ end of FINDFILE (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(4).bak") ) ;_ end of FINDFILE ) ;_ end of AND (DOS_DELETE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(4).bak") ) ;_ end of dos_delete (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(4).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of dos_rename ) ((AND (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of FINDFILE (< (CDAR (DOS_FILEDATE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak"))) (- (GETVAR "cdate") 0.01) ) ;_ end of < (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of FINDFILE (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") ) ;_ end of FINDFILE ) ;_ end of AND (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(4).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of dos_rename ) ((AND (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of FINDFILE (< (CDAR (DOS_FILEDATE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak"))) (- (GETVAR "cdate") 0.01) ) ;_ end of < (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of FINDFILE ) ;_ end of AND (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(3).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of dos_rename ) ((AND (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of FINDFILE (< (CDAR (DOS_FILEDATE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak"))) (- (GETVAR "cdate") 0.01) ) ;_ end of < ) ;_ end of AND (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(2).bak") ) ;_ end of dos_rename (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of dos_rename ) ((FINDFILE (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg")) (DOS_RENAME (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name ".dwg") (STRCAT bkupdrv "\\Backups" (NTH 1 spec_lst) dwg_name "(1).bak") ) ;_ end of dos_rename ) ) ;_ end of COND (SETQ didit (DOS_COPY from_file to_file)) (DOS_DRIVE dwg_drv) (DOS_CHDIR "\\") (DOS_CHDIR (NTH 1 spec_lst)) (COMMAND) (IF didit (PRINC (STRCAT " Local backup copy made: " (IF (EQ didit T) to_file didit ) ;_ end of IF ) ;_ end of STRCAT ) ;differs from doslib14 to doslib 15 (IF found_from (PRINC " No local backup copy has been made. ") (PRINC (STRCAT " " (STRCASE dwg_name) ".DWG not found on " dwg_drv ", No local backup copy has been made. " ) ;_ end of strcat ) ;_ end of princ ) ;_ end of if ) ;_ end of if (PRINC) ) ;_ end of defun ;|«Visual LISP© Format Options» (100 2 40 2 T "end of " 100 9 2 1 0 nil T nil T) ;*** DO NOT add text below the comment! ***|;