我有一个程序:
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 标签之间的行。我认为从 stdin 进行简单的读取就可以了:
// ftpx
while(fgets(buf,4096,stdin))
{
fprintf(logFile," INN %d %s\n",++i,buf);
}
但运气不好。那么阅读这些行的技巧是什么?
最佳答案
好的。问题出在别处。从 stdin 读取确实有效。
关于c - 从标准输入读取脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19706861/