Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 外壳输入输出重定向的辅助管道_Bash_Shell_Scripting_Io Redirection - Fatal编程技术网

Bash 外壳输入输出重定向的辅助管道

Bash 外壳输入输出重定向的辅助管道,bash,shell,scripting,io-redirection,Bash,Shell,Scripting,Io Redirection,在我的脚本中,我需要将特殊命令输出到预定义的文件描述符以及常用的stdout stderr,并在另一个程序中侦听命令,而不创建文件 本质上,它类似于使用管道重定向,但通过使用其他文件描述符或套接字或设备进行迂回: 将标准输出(1)重定向到标准输入(0)的常用方法: 我需要什么(一些重定向,使用其他描述符,例如5): >执行“打开描述5” >方案1??5??&程序2你不能。做信号灯之类的事情的唯一方法是使用fifo文件,但您说过不想创建文件。您定义的文件描述符将只存在于该shell中,因此任何子进

在我的脚本中,我需要将特殊命令输出到预定义的文件描述符以及常用的stdout stderr,并在另一个程序中侦听命令,而不创建文件

本质上,它类似于使用管道重定向,但通过使用其他文件描述符或套接字或设备进行迂回:

将标准输出(1)重定向到标准输入(0)的常用方法:

我需要什么(一些重定向,使用其他描述符,例如5):

>执行“打开描述5”

>方案1??5??&程序2你不能。做信号灯之类的事情的唯一方法是使用fifo文件,但您说过不想创建文件。您定义的文件描述符将只存在于该shell中,因此任何子进程或其他程序都不会知道它们。

您需要program1写入fd 5,program2读取fd 5?那么做一个管道/fifo?问题描述太模糊了。输出哪些特殊命令?哪个程序正在监听哪些命令?如果可以使用文件,怎么做?(注:最后一个问题是让我们更好地把握问题,而不是给我们一个逃避问题的借口。)
> program1 | program2
> exec "open descr 5 <>5" 
> program1 ??5?? & program2 <5 &