Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #71847

Copying non-existing files, was Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name.

From Peter Otten <__peter__@web.de>
Subject Copying non-existing files, was Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name.
Date 2014-05-21 11:12 +0200
Organization None
References (5 earlier) <575e4180-b222-4e8f-a378-f39a51c3c085@googlegroups.com> <45b38d71-bf27-4d8e-b912-1093bbb38dcb@googlegroups.com> <mailman.10157.1400602844.18130.python-list@python.org> <2122e5a9-198d-4998-bebf-3f19fe110f57@googlegroups.com> <99a414b6-0d02-40ac-9891-e179ff296db8@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.10182.1400663582.18130.python-list@python.org> (permalink)

Show all headers | View raw


Satish ML wrote:

[Regarding subject: let's see if we can trigger a buffer overflow somewhere 
;)]

> On Wednesday, May 21, 2014 6:59:40 AM UTC+5:30, Rustom Mody wrote:
>> On Tuesday, May 20, 2014 9:35:10 PM UTC+5:30, Jagadeesh N. Malakannavar
>> wrote: > Hi Satish, > > Can you please send python part in plain text
>> format? Python code here is > > difficult to read. It would be helpful to
>> read
>> 
https://wiki.python.org/moin/GoogleGroupsPython#Posting_from_Google_Groups
>> Note particularly the 2 standard expectations: - Dont top post - Dont use
>> excessively long (> 70 chars) lines
> 
> Hi,
> 
> Here is the code.
> 
> 
> xls file looks as follows:
> a.c	C:\Desktop\salingeg\src\code\a.c	C:\Desktop\salingeg\dest\code
> hello.txt	C:\Desktop\salingeg\src\txt\hello.txt
> C:\Desktop\salingeg\dest\txt
> integration.doc	C:\Desktop\salingeg\src\doc\integration.doc
> C:\Desktop\salingeg\dest\doc
> UG.doc	C:\Desktop\salingeg\src\doc\UG.doc	C:\Desktop\salingeg\dest\doc
> Applications.xml	C:\Desktop\salingeg\src\xml\Applications.xml
> C:\Desktop\salingeg\dest\xml
> Platforms.xml	C:\Desktop\salingeg\src\xml\Platforms.xml
> C:\Desktop\salingeg\dest\xml
> avc.alias	C:\Desktop\salingeg\src\cnx\alias\avc.alias
> C:\Desktop\salingeg\dest\cnx\alias
> cats.alias	C:\Desktop\salingeg\src\cnx\alias\cats.alias
> C:\Desktop\salingeg\dest\cnx\alias
> avc.init	C:\Desktop\salingeg\src\cnx\init\avc.init
> C:\Desktop\salingeg\dest\cnx\init
> cats.init	C:\Desktop\salingeg\src\cnx\init\cats.init
> C:\Desktop\salingeg\dest\cnx\init
> 
> 
> PYTHON SCRIPT:
> 
> import xlrd, sys, os, shutil
> 
> file_location = "C:\Users\salingeg\Desktop\input.xls"
> workbook = xlrd.open_workbook(file_location)
> sheet = workbook.sheet_by_index(0)
> sheet.cell_value(0, 0)
> for row in range(sheet.nrows):
>         source = []
>         source.append(sheet.cell_value(row, 1))
>         destination = []
>         destination.append(sheet.cell_value(row, 2))
>         files = []
>         files.append(sheet.cell_value(row, 0))
>         for f in files:
>                 for s in source:
>                         for d in destination:
>                                 print f
>                                 print s
>                                 print d
>                                 if (os.path.exists("d\\f")):

The following line will either always be executed if you have a subdirectory 
"d" in your current working directory and that directory contains a file 
called "f" (unlikely) or never if "d\\f" doesn't exist (likely). 

Have a look at os.path.join() for the right way to join a directory with a 
filename into a path. Use the interactive interpreter to make sure you get 
the desired result and understand how it works before you fix your script.

>                                         print ('File exists')
>                                 else:
>                                         shutil.copy(s, d)
>                 
> I am getting the following error:
> 
> a.c
> C:\Desktop\salingeg\src\code\a.c
> C:\Desktop\salingeg\dest\code
> Traceback (most recent call last):
>   File "C:\Users\salingeg\Desktop\excel_1.py", line 24, in <module>
>     shutil.copy(s, d)
>   File "C:\Program Files (x86)\python26\lib\shutil.py", line 84, in copy
>     copyfile(src, dst)
>   File "C:\Program Files (x86)\python26\lib\shutil.py", line 50, in
>   copyfile
>     with open(src, 'rb') as fsrc:
> IOError: [Errno 2] No such file or directory:
> u'C:\\Desktop\\salingeg\\src\\code\\a.c'

According to the error message the file you are trying to copy doesn't 
exist. Have a look into the C:\Desktop\salngeg\src\code folder, and check 
whether a file called a.c is there. If not you have three options

- add the file
- remove the line from the excel file
- modify the code to check if the *source* file exists

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. satishmlwizpro@gmail.com - 2014-05-18 23:53 -0700
  Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Chris Angelico <rosuav@gmail.com> - 2014-05-19 17:01 +1000
    Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-19 01:08 -0700
    Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-19 02:02 -0700
      Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Rustom Mody <rustompmody@gmail.com> - 2014-05-19 22:57 -0700
        Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-20 05:21 -0700
          Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-20 05:23 -0700
          Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-20 05:24 -0700
            Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-20 05:28 -0700
              Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. alister <alister.nospam.ware@ntlworld.com> - 2014-05-20 12:48 +0000
              Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Jagadeesh Malakannavar <mnjagadeesh@gmail.com> - 2014-05-20 21:35 +0530
                Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Rustom Mody <rustompmody@gmail.com> - 2014-05-20 18:29 -0700
                Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-21 01:41 -0700
                Copying non-existing files, was Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Peter Otten <__peter__@web.de> - 2014-05-21 11:12 +0200
                Re: Copying non-existing files, was Re: Copying files from sub folders under source directories into sub folders with same names as source directory sub folders in destination directories without overwriting already existing files of same name. Satish ML <satishmlwizpro@gmail.com> - 2014-05-21 02:34 -0700
                Re: Copying non-existing files Peter Otten <__peter__@web.de> - 2014-05-21 12:15 +0200
                Re: Copying non-existing files Rustom Mody <rustompmody@gmail.com> - 2014-05-21 07:14 -0700
                Re: Copying non-existing files Chris Angelico <rosuav@gmail.com> - 2014-05-22 00:45 +1000
                Re: Copying non-existing files Rustom Mody <rustompmody@gmail.com> - 2014-05-21 22:53 -0700

csiph-web