【发布时间】:2013-09-18 12:40:50
【问题描述】:
是否可以使用 bash 创建一个在打开时将 2 个文件合并为 1 个的视图/虚拟文件?
示例:
FILE_META_1.txt
FILE_META_2.txt
组合成
FILE_META.txt
【问题讨论】:
-
cat FILE_META_1.txt FILE_META_2.txt > FILE_META.txt?
是否可以使用 bash 创建一个在打开时将 2 个文件合并为 1 个的视图/虚拟文件?
示例:
FILE_META_1.txt
FILE_META_2.txt
组合成
FILE_META.txt
【问题讨论】:
cat FILE_META_1.txt FILE_META_2.txt > FILE_META.txt?
一般来说,这是不可能的。我假设您的意思是您希望在不创建作为 2 个文件总和的第 3 个文件的情况下逻辑链接 2 个文件。我也经常想要这个功能。它必须在内核级别或通过特殊的文件系统完成,也许使用 FUSE。 UnionFS 为目录提供此功能,但不为文件提供。 FuseFile 看起来像你想要的。也可以看看Logic File System。
【讨论】:
您可以通过进程替换以流式方式打开它们:
cat <(cat FILE_META_1.txt; cat FILE_META_2.txt;)
<(*) 在此处扩展为命名管道路径,您可以像输入文件一样打开和访问它。
【讨论】: