如何将 linux 'file' 命令应用于程序的输出(STDOUT)以确定其文件类型

问题描述 投票:0回答:1

我想确定程序 STDOUT 输出内容的文件类型(无需先将输出保存到文件) 也就是说,理论上,我想运行:

myprogram | file

但是,`/usr/bin/file 无法从 STDIN 读取。

如果我尝试类似:

my program | file <(cat /dev/stdin)
,我会收到错误
broken symbolic link to pipe:[460261257]

我知道我可以将输出保存到临时文件,在临时文件上运行

file
,然后删除临时文件,但这看起来非常笨拙。

那么是否有任何带有重定向和/或文件描述符的 bash 魔法可以让我确定程序输出的文件类型?

linux file stdin file-descriptor io-redirection
1个回答
0
投票

使用

-
文件名指定要从标准输入读取的
file

例如。

cat myfile | file -


    

© www.soinside.com 2019 - 2024. All rights reserved.