This article is from the Amiga FAQ, by Ignaz Kellerer with numerous contributions by others.
As you can see, this is a somewhat difficult way of using pipes, needing a lot of typing especially compared to the UNIX pipes. There is a solution for that.
Andy Finkel, a former Commodore software engineer wrote a command called `Pipe' (not to be confused with `PIPE:') that simplifies the use of the `PIPE:' device. Unfortunately, this command did not make it into the 2.04 release. However, Commodore has given the permission to distribute this, and a few other commands, freely. (Sources: Fish disk 673, Aminet, `util/cli/finkelshelltools.lha')
For some reason Commodore did not include these commands in the later OS releases, although they work fine even with OS 3.1 (V40). Thus all users are required to get them from the above sources if they wish to use them.
The Pipe command usage is simple. The commands to be run with their inputs and outputs piped together are given as arguments to the command, separated by the | (vertical bar) character:
1> Pipe List SYS: | More or 1> Pipe List: SYS: NOHEAD | Sort IN: OUT: | More
Notice how Sort needs `IN:' and `OUT:'. These devices don't actually exist, but the Pipe command simulates them with the PIPE:. This is necessary because C:Sort can not use the `standard IO', but insists on files.
The separator character | can be configured to be something else with the local variable __PCHAR.