相关疑难解决方法(0)

为什么进程替换会产生一个名为 /dev/fd/63 的文件,它是一个管道?

我试图在这个特定示例的上下文中理解命名管道。

我输入<(ls -l)我的终端并得到输出,bash: /dev/fd/63: Permission denied.

如果我输入cat <(ls -l),我可以看到目录内容。如果我更换catecho,我觉得我得到的终端名称(或者是什么呢?)。

echo <(ls -l)给出输出为/dev/fd/63

此外,这个示例输出我不清楚。

ls -l <(echo "Whatever")
lr-x------ 1 root root 64 Sep 17 13:18 /dev/fd/63 -> pipe:[48078752]
Run Code Online (Sandbox Code Playgroud)

但是,如果我给出,ls -l <()它会列出目录内容。

在命名管道的情况下会发生什么?

process pipe open-files process-substitution

49
推荐指数
1
解决办法
3万
查看次数

标签 统计

open-files ×1

pipe ×1

process ×1

process-substitution ×1