我有一个关闭的程序(即 Intersystems 'csession' Cachédb 终端),它将写入作为参数给定的文件。它这样做了几次,然后返回。每次,给定的文件都被覆盖,所以最后,我只得到最后的结果......
我的想法是,可以采用欺骗手段并提供一个特殊的伪文件作为参数,该伪文件将充当代理并将写入的内容附加到另一个文件中。
create proxyfile as >> realfile
cat "Hello" > proxyfile
cat "Bye" > proxyfile
cat realfile
Hello
Bye
有没有人认为这可能是可行的,可能需要使用一些实用程序?
最佳答案
为此,您可以使用 FIFO 文件(命名管道)。要查看它们是如何工作的,请打开两个终端窗口。一方面,做
cd /tmp
mkfifo pipe
tail -f pipe
在另一个
cd /tmp
echo "Hello" > pipe
echo "Bye" > pipe
对于实际问题,让您的应用程序写入 FIFO 并在后台使用 tail -f pipe > outputfile
将结果收集到 outputfile
。
关于linux - 如何在 bash 中创建一个附加到另一个文件的伪文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13567183/