【发布时间】:2017-02-20 16:56:32
【问题描述】:
所以我有三个参数从命令行执行我的程序,如下所示:
../../xinputa.txt ../../xinputb.txt | grep MATCH > aoutmatches
(这个命令是作为要使用的参数提供给我的)。
在我的程序的主要部分,我有:
int main(int argc, char *argv[]) {
double timenew = 0.0;
string data_filename = "";
string pattern_filename = "";
string timestring = "";
string outFileName = "";
ofstream cout;
Scanner in_scanner;
SMatch stringmatch;
CheckArgs(3, argc, argv, "datafilename patternfilename outfilename");
data_filename = static_cast<string>(argv[1]);
pattern_filename = static_cast<string>(argv[2]);
outFileName = static_cast<string>(argv[3]);
FileOpen(cout, outFileName);
cout << kTag << "Beginning execution\n";
我有很多行看起来像正上方的那一行^
我完成了我的 main.cc:
FileClose(cout);
此信息只是为您提供一些背景信息。我只想知道
这些论点符合我的要求以及这个论点的确切含义:
| grep MATCH >zoutmatchess
【问题讨论】:
-
cout是一个非常糟糕的文件流名称。极易与标准输出流std::cout混淆。 -
| grep MATCH >zoutmatchess是一个名为grep的命令的管道。>将 grep 的输出附加到指定的文件名。
标签: c++ linux unix parameters arguments