bug-cppi
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-cppi] Re: [PATCH] Add new option --in-place


From: Jim Meyering
Subject: [bug-cppi] Re: [PATCH] Add new option --in-place
Date: Sun, 21 Mar 2010 12:14:57 +0100

Pádraig Brady wrote:

> On 20/03/10 08:32, Jim Meyering wrote:
>> Hello,
>>
>> [Cc'ing bug-coreutils...]
>>
>> Giuseppe proposed to add the --in-place option to GNU cppi,
>> (cppi is a small program that can act as a filter
>>   http://savannah.gnu.org/forum/forum.php?forum_id=6210
>> but cppi is so small that adding even that single, relatively
>> simple option would make it substantially more complicated.
>>
>> I'm nearly certain I've seen a program (possibly a small
>> perl script) that can effectively add the --in-place
>> functionality to any filter program, but so far my searches
>> have been in vain.
>>
>> I want a tool that works like this:
>>
>>     in-place [--backup] 'cppi ...options' *.c
>>
>> For each .c file, it would apply the filter program, and upon each
>> successful exit, it would update the .c file in place (atomically,
>> of course) with the output from the filter.
>>
>> Can anyone point to existing code that does that?
>
> Well we were talking about a small "replace" or "inplace" script,
> in coreutils/contrib/ which would use the facilities of various coreutils
> http://lists.gnu.org/archive/html/bug-coreutils/2009-09/msg00327.html
> I didn't get any feedback on the new cp --attributes-only option
> though so was worried about adding this new interface.

Sorry I didn't reply.
Your --attributes-only option looks worthwhile.

However, I think the default behavior of an
update-via-filter-and-replace program should use
the temp-file-in-same-directory-and-rename technique
rather than the non-atomic alternative.
The case in which the destination directory is
unwritable is far less common, so if we support that
at all, it should be only as a fallback, or perhaps
only if some option is specified.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]