What is 2+23?no_redirect=1

Some tricks about redirection

Some syntax particularity about this may have important behaviours. There is some little samples about redirections, , , and arguments ordering.

1 - Overwriting or appending?

Symbol mean redirection.

  • mean send to as a whole completed file, overwriting target if exist (see bash feature at #3 later).
  • mean send in addition to would append to target if exist.

In any case, the file would be created if they not exist.

2 - The shell command line is order dependent!!

For testing this, we need a simple command which will send something on both outputs:

(Expecting you don't have a directory named , of course ;). Well, we have it!!

So, let's see:

The last command line dumps to the console, and it seem not to be the expected behaviour... But...

If you want to make some post filtering about one output, the other or both:

Notice that the last command line in this paragraph is exactly same as in previous paragraph, where I wrote seem not to be the expected behaviour (so, this could even be an expected behaviour).

Well, there is a little tricks about redirections, for doing different operation on both outputs:

Nota: descriptor would occur spontaneously because of .

Addendum: nota! With the new version of bash () there is a new feature and more sexy syntax for doing this kind of things:

And finally for such a cascading output formatting:

Addendum: nota! Same new syntax, in both ways:

Where go through a specific filter, to another and finally both outputs merged go through a third command filter.

3 - A word about option and syntax

That's about overwriting:

While instruct bash to not overwrite any existing file, the syntax let you pass through this limitation:

The file is overwritten each time, well now:

Pass through with :

Unsetting this option and/or inquiring if already set.

4 - Last trick and more...

For redirecting both output from a given command, we see that a right syntax could be:

for this special case, there is a shortcut syntax: ... or

Nota: if exist, is a correct syntax too:

4b- Now, I will let you think about:

4c- If you're interested in more information

You could read the fine manual by hitting:

in a bash console ;-)