想要 运行 在新终端中执行 cpp 可执行文件,然后将文件发送到输入流

Want to run a cpp executable in a new terminal and then send a file into the input stream

我想在新的 linux 终端中 运行 一个 c++ 可执行文件,我正在使用:

xterm -e executable options &disown

这行得通。但是,我还需要通过命令行解析一个文本文件。通常,文件将被解析为:

./executable options < inputFile.txt

然后文件由使用此函数的 c++ 代码处理:

void parse_lines(istream &in){
    verify_version_number(in);
    read_variables(in);
    ...
}

但是以下行不起作用:

xterm -e executable options < inputFile.txt &disown

如何在新终端中 运行 可执行文件,然后将 inputFile.txt 的内容发送到 istream 中?

谢谢!

尝试 x-terminal-emulator 而不是 xterm。也许有用。

如果在命令两边加上引号,它将作为单个命令发送到 shell,特殊字符 <& 将在 shell 运行 xterm中而不是在shell中开始 xterm:

xterm -e "executable options < inputFile.txt &disown"