选择管道的输出

Jor*_*pez 2 command-line shell bash

给定一个形式为 的管道C1 | C2,如果C2接受多个位置参数,是否可以选择 的输出C1去向?

考虑以下示例。

$ cat myscript 
#!/bin/bash
cat $1
cat $2
$ cat world.txt
World
$ echo "Hello" | ./myscript world.txt
World
Hello
Run Code Online (Sandbox Code Playgroud)

我希望通过仅更改管道的右侧,最终输出的顺序正确(Hello World)。

Phi*_*ppe 5

你可能想试试这个:

echo "Hello" | ./myscript /dev/stdin world.txt
Run Code Online (Sandbox Code Playgroud)

所以 ./myscript 的标准输入会输入第一个“cat”