using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.IO;
using System.Threading;
namespace CollectFTP {
class Program {
static void Main(string[] args) {
try {
Process p = new Process();
p.StartInfo.FileName = "ftp";
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = false;
p.StartInfo.UseShellExecute = false;
p.Start();
StreamWriter swi = p.StandardInput;
StreamReader swr = p.StandardOutput;
string[] cmd = {
"open",
"192.168.248.131",
"ank",
"1",
"dir"};
for (int i = 0; i < cmd.Length; i++) {
string result = SendCmd(swr, swi, cmd[i]);
Console.WriteLine(result);
}
Console.WriteLine("完成");
Console.ReadLine();
}
catch (Exception ex) {
Console.WriteLine(ex.Message);
}
}
static string SendCmd(StreamReader sr, StreamWriter sw, string cmd) {
Console.WriteLine(cmd);
sw.Write(cmd + "\r\n");
sw.Flush();
Thread.Sleep(500);
StringBuilder sb = new StringBuilder(UInt16.MaxValue);
for (; sr.Peek() > 0; ) {
char c = (char)sr.Read();
sb.Append(c.ToString());
}
return sb.ToString();
}
}
}
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.IO;
using System.Threading;
namespace CollectFTP {
class Program {
static void Main(string[] args) {
try {
Process p = new Process();
p.StartInfo.FileName = "ftp";
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = false;
p.StartInfo.UseShellExecute = false;
p.Start();
StreamWriter swi = p.StandardInput;
StreamReader swr = p.StandardOutput;
string[] cmd = {
"open",
"192.168.248.131",
"ank",
"1",
"dir"};
for (int i = 0; i < cmd.Length; i++) {
string result = SendCmd(swr, swi, cmd[i]);
Console.WriteLine(result);
}
Console.WriteLine("完成");
Console.ReadLine();
}
catch (Exception ex) {
Console.WriteLine(ex.Message);
}
}
static string SendCmd(StreamReader sr, StreamWriter sw, string cmd) {
Console.WriteLine(cmd);
sw.Write(cmd + "\r\n");
sw.Flush();
Thread.Sleep(500);
StringBuilder sb = new StringBuilder(UInt16.MaxValue);
for (; sr.Peek() > 0; ) {
char c = (char)sr.Read();
sb.Append(c.ToString());
}
return sb.ToString();
}
}
}