gpt4 book ai didi

c - 在linux中使用管道同时写入文件

转载 作者:行者123 更新时间:2023-11-30 20:38:13 30 4
gpt4 key购买 nike

我有一个文件 names.txt Pop,Jack 和一个文件 surnames.txt Ioan,Gry。我需要获得以下输出,person.txt,Pop Ioan,Jack Gry。我必须创建两个程序:

  • 首先从文件names.txt中读取并写入person.txt。
  • 第二次读取 surnames.txt 并写入 person.txt。

我需要使用管道进行同步。我该怎么做?

最佳答案

每个程序将打开一个用于读取的命名管道和一个用于写入的命名管道,用于追加的 person.txt(或仅写入标准输出)以及适当的输入文件(或从标准输入读取)。一个程序(可能由命令行 arg 指定)将首先立即读取一行并将其写入输出,然后将单个字节写入一个管道,然后阻止从另一个管道读取。另一个程序等待第一个管道上的字节,然后写入其文本和换行符,然后再将字节写入另一个管道。因此,您只需传递一个 token (写入管道的字节)即可同步写入。简单地将管道名称作为命令行参数传递给程序,然后通过将单个字节写入其中一个管道来启动整个过程可能会很好,但是程序并不相同,因为必须编写一个新队。最好的选择是编写一个程序,但使用不同的命令行参数调用它。 (我不知道这是否符合“两个程序”的条件。)

关于c - 在linux中使用管道同时写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30151726/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com