在Unix中没有临时文件的粘贴
发布时间:2020-12-15 19:58:17 所属栏目:安全 来源:网络整理
导读:我试图使用Unix命令粘贴,这就像一个列的附加形式的猫,并遇到一个我从来没有知道如何在Unix中解决的难题。 如何使用两个不同程序的输出作为另一个程序的输入(不使用临时文件)? 理想情况下,我会这样做(不使用临时文件): ./progA tmpA; ./progB tmpB;粘贴t
我试图使用Unix命令粘贴,这就像一个列的附加形式的猫,并遇到一个我从来没有知道如何在Unix中解决的难题。
如何使用两个不同程序的输出作为另一个程序的输入(不使用临时文件)? 理想情况下,我会这样做(不使用临时文件): ./progA> tmpA; 这似乎对我来说比较频繁,但是我不知道如何使用两个不同程序(progA和progB)的输出作为另一个输入,而不使用临时文件(tmpA和tmpB)。 对于像粘贴这样的命令,只需使用粘贴$(./programA)$(./programB)(以bash表示法)就不会这样做,因为它可以从文件或stdin中读取。 我担心临时文件的原因是我不想让作业并行运行,通过使用相同的文件导致问题;确保一个唯一的文件名有时是困难的。 我正在使用bash,但是好奇地看到任何Unix shell的解决方案。 最重要的是,我甚至以正确的方式来处理这个问题吗? 干杯!
您不需要在bash下的临时文件,请尝试:
paste <(./progA) <(./progB) 请参阅Bash手册中的“Process Substitution”。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |