On 15Apr2019 08:34, felixs <besteck...@gmail.com> wrote:
On Mon, Apr 15, 2019 at 07:33:53AM +1000, Cameron Simpson wrote:
On 15Apr2019 07:19, Cameron Simpson <c...@cskk.id.au> wrote:
> Think about it. You're invoking sed _once_. Its input can come from only
> one file.

Actually, I lie. The way you're doing it "sed <filename" can only use one
file. Sed will work on many files, like almost any UNIX utility:

 sed .... /path/to/spooldir/*

I can confirm that without redirecting standard input and just putting
the path as last argument works.
And I can also confirm that with the redirection from standard input,
the mentioned error message is still output.
By the way, the error message (when redirecting) is in German (my locale),
(I re-translated it into English) even when I put LC_ALL=C before the
command. But that only happens here, with THIS precise sed command.

It may depend on what's making the error message.

Your redirection message from:

 < /path/*

comes from bash. If you went like this:

 LC_ALL=C sed .... </path/*

then the LC_ALL=C is associated with the sed command only, which has not been issued. So your bash message will be in the German locale.

On the other hand, this:

 LC_ALL=C sed 'illegal sed command' ...

invokes sed in the C locale and then sed will issue errors on that basis.

Does this distinction fit with the behaviour you see?

Cheers,
Cameron Simpson <c...@cskk.id.au>

Reply via email to