linux - Linux中的 "tee"命令可以打印C程序的输入和输出吗?

标签 linux shell terminal

我有一个简单的 C 程序,它会要求从用户处获取一个整数,然后打印该整数。

#include <stdio.h>
int main() {   
    int number;
    printf("Enter an integer: ");  
    scanf("%d", &number);
    printf("You entered: %d", number);  
    return 0;}

当我使用此命令时:

gcc program.c -o test
./test | tee text.txt

在终端上运行的程序不会打印输入整数行,而是等待输入,当我提供该输入时,它会打印它并打印到 text.txt 文件夹中。我想按原样运行程序,并将终端上运行的所有内容存储到 text.txt 文件夹中,包括输入和输出。有什么可能的方法吗?

最佳答案

tee 命令适用于一个 输入,但您想要捕获两个输入。小心一点后,您可以使用两个单独的 tee 命令将输入​​和输出复制到同一个文件,但您最好使用专为您的目的设计的实用程序,例如 script .

关于linux - Linux中的 "tee"命令可以打印C程序的输入和输出吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62499046/

相关文章:

Python - 隐藏/最小化子进程窗口

php - 如何为每个目录自动将 PHP 错误保存到文件中?

linux - 来自用户的模拟 "enter"按钮的命令

php - 使用 exec() 启动和监视进程

linux - perl $ENV 没有得到 linux bash var 的值

linux - Minicom 黑色背景颜色不受尊重

linux - 内核崩溃后系统是否有可能保持事件状态?

将 gchar 与字符串进行比较

linux - 如何将 tiff 图像编译为单个文本文件中的 xyz 坐标?

ffmpeg concat 过滤器正在丢弃第二个视频的第一秒