So taking advantage arrays, your code might look something like this

Code:

$sourceDir = 'i:\gisdata\shape\'
$destDir = 'c:\gisdata\shape\'
$checkFile = 'DONOTDELETE-GISscript.txt'
$subDirs = 'airport','bldgs','bmarks','cbs','dwgs','ease','fldplain','grids',
'inch50','intersec','laterals','limits','plats','presslns','ss',
'ssstr','streams','streetc1','streets','surverys','tlots'


if ingroup ("GISSHAPES")
$Result = CompareFileTimes($sourceDir + $checkFile, $destDir + $checkFile)
if $Result = -3 or $Result = 1
for each $dir in subDirs
if $Result = -3
md $destDir + $dir
endif
copy $sourceDir + $dir $destDir + $dir
next
copy $sourceDir + $checkFile $destDir + $checkFile
endif
endif