我正在使用一些外部二进制文件编写一个 C 程序来实现计划的目标。我需要运行一个命令给我一个输出,然后我需要处理它,然后作为输入输入另一个程序。我正在使用 popen,但想知道这是否与使用 KornShell (ksh) 临时文件相同。
例如:
touch myfile && chmod 700
cat myfile > /tmp/tempfile
process_file < /tmp/tempfile && rm /tmp/tempfile
由于这会创建一个可由 root 读取的临时文件,如果在 C 中使用 popen,知道管道也是文件,它会是一样的吗?或者假设操作系统(OS)不允许任何其他进程读取您的管道是否安全?