我有一个程序:
sprintf(cmd,
"ftpx -n %s > ftp_get.out <<END_SCRIPT\n"
"quote USER %s\n"
"quote PASS %s\n"
"bin\n"
"cd %s\n"
"get %s\n"
"quit\n"
"END_SCRIPT\n",host,user,password,dir,fileName);
system(cmd);
只需通过 ftp 下载文件。按预期工作。
除了我实际上想运行我自己的名为 ftpx 的可执行文件。但我不知道如何阅读 END_SCRIPT 标签之间的行。我认为从标准输入中简单读取会起作用:
// ftpx
while(fgets(buf,4096,stdin))
{
fprintf(logFile," INN %d %s\n",++i,buf);
}
但没有运气。那么阅读这些行的诀窍是什么?