Bala subramanian wrote:
Hai,
I have file1.dat,file2.dat...file 300.dat in one directory. I want to
concatenate all the files in a single file (total.dat) with a string
"END" separating the file contents.
my total.dat should be
file1.dat contents
END
file2.dat contents
END
----
----
file300.dat.
now i have another 400 such *.dat files in another directory whose
contents i hve to append to "total.dat", how can i do this task. i need
to do something like, updating the file total.dat without overwritting it.
Thanks,
Bala
This should about do it:
-------------------------------------
#!/usr/bin/env python
import sys , os , glob
startDir = ''
totalFile = '/path/to/total.dat'
if len(sys.argv) > 1 and os.path.isdir(sys.argv[1]):
startDir = sys.argv[1]
else:
print 'Usage: %s <startdir>' % os.path.basename(sys.argv[0])
sys.exit(1)
tfh = open(totalFile , 'a')
for f in glob.glob(os.path.join(startDir , '*.dat')):
tfh.write('%s contents\n' % f)
tfh.write(open(f).read())
tfh.write('\nEND\n')
tfh.close()
-------------------------------------
All you have to do is set "totalFile" to your main output file and then
call the script as "scriptname.py /path/to/datfile/directory".
--
Jay Deiman
\033:wq!
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor