On 01/-10/-28163 02:59 PM, ecu_jon wrote:
this is a reply to both Dave Angel and Ben Finney. this version of
testing i think incorperates what you guys are saying.
<a href="http://thanksforallthefish.endofinternet.net/
testing1.py">testin1.py</a>
except maybe the os.join.path in the last function.
here is the traceback
Traceback (most recent call last):
File "I:\college\spring11\capstone-project\testing.py", line 88, in
<module>
backupall()
File "I:\college\spring11\capstone-project\testing.py", line 84, in
backupall
shutil.copy2(filesource, filedest1)
File "C:\Python27\lib\shutil.py", line 127, in copy2
copyfile(src, dst)
File "C:\Python27\lib\shutil.py", line 82, in copyfile
with open(dst, 'wb') as fdst:
IOError: [Errno 2] No such file or directory: '//Mothera/week2\\jonI:\
\college\\spring11\\capstone-project\\changelog.txt'
it looks like it needs os.walk and the other for line to dig through
the folders.
this being the whole path
I:\\college\\spring11\\capstone-project\\changelog.txt of source.
Simplify the code.
def weekChoice()
return 1 + (datetime.now().day -1) // 7 #weeks go from 1 to 5
def backupall():
source = source1()
destination = destination2()
print "copy tree ", source, destination
if os.path.exists(destination):
if os.path.isdir(destination):
shutil.rmtree(destination)
else:
os.unlink(destination)
shutil.copytree(source, destination)
return
All that nonsense with curdir was messing up your thinking.
I'm not going to try to debug your destination2() function, but I would
point out that when you use os.path.join(), please let it do the work
for you. It takes any number of arguments, and those arguments should
not have extra slashes or backslashes in them. The leading slashes are
okay for the first node, if you want a unc.
It would have been much easier if you had made source and destination
arguments to the backupall() function. It then might have become clear
that it's simply copytree(), with the extra requirement of deleting
whatever used to be there.
Now if you aren't allowed to delete what was already there, then you
can't use copytree, and need to start over with os.walk().
DaveA
--
http://mail.python.org/mailman/listinfo/python-list