我能否在linux中创建一个特殊的文件,也许使用mknod,这实际上是一个脚本的输出?
示例:
cat specialfile
产出:
testing 123
内部特殊文件:
echo "testing 123"
因此,与其实际显示echo "testing 123"
它显示了脚本输出testing 123的结果。
我意识到脚本名和输出句柄可能必须是两个不同的文件,这样才能编辑它,例如。specialfile.sh用于脚本,specialfile用于句柄
发布于 2013-08-03 18:41:38
可以创建一个名为FIFO (mkfifo <name>)的程序,然后执行以下操作:
mkfifo my-fifo
echo "testing 123" > my-fifo在另一个壳中,请做:
dumb-program my-fifo对于愚蠢的程序来说,FIFO看起来像一个文件(不是完全的,因为它是不可查找的)。这相当于使用这样的匿名管道:
echo "testing 123" | dumb-program /dev/stdin或者在像这样的现代shell中使用进程替换:
dumb-program <(echo "testing 123")我不确定设备节点,但在我看来,您似乎是以错误的方式处理这个问题。
发布于 2013-08-03 10:29:32
您可以在命令行的子subshell中执行cat:
$(cat specialfile)然后,输出将由shell解释。
https://unix.stackexchange.com/questions/85399
复制相似问题