On Apr 12, 4:09 pm, Paulo da Silva <[EMAIL PROTECTED]> wrote:
> [EMAIL PROTECTED] escreveu:
>
>
>
> > On Apr 12, 9:20 am, Paulo da Silva <[EMAIL PROTECTED]> wrote:
> >> Hi!
>
> >> I need to process a file to produce another file that *must* have
> >> *exactly* the same attributes and permissions of the former. What is the
> >> best way to do this? The file must not exist with contents (it may exist
> >> empty) unless it has the same attributes and permissions.
> >> I know how to do this using, let me call it, "C type code" (stat, chmod,
> >> chown, etc). I would like to hear some opinions on if and how it would
> >> be possible in a more elegant/python way.
>
> > Are you using a system that supports the creation
> > of a hard link?
>
> > If so, try os.link.
>
> May be I missed something exposing my q.
> I need to process an input file "foo" to produce a different contents
> file "bar". "bar" must have the same attributes/permissions of "foo".
> I forgot to say that the OS is Linux.



Sorry, I did misunderstand your question at first.
Well, you do have stat, chown, chmod in Python; but
if you're on Linux, you might just want to use
the "cp" command with the "-p" switch:

import subprocess
retcode = subprocess.call([ "/bin/cp", "-p", oldfile, newfile ])
On my system, this preserves the access permissions and ownership.

And if you modify the file after copying, you can alter
the access and modification times with posix.utime
to match that of the original.

--
Hope this helps,
Steven








-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to