iT邦幫忙

0

[C#] Command Line刪除FTP檔案,可以偵測執行失敗或停止繼續運行的語法?

  • 分享至 

  • xImage

這台FTP有個問題,就是刪除 FTP 大量檔案時會報錯
不管是用Windows檔案總管FTP連線刪除、或用.NET刪除,都有這問題

這邊要問.NET(WebForm)的問題
因 .NET刪除,會寫LOG到DB
但cmd.exe就算報錯 或 卡住沒跑完
FTP指令一樣會結束
所以LOG會一樣照寫,這邊想詢問
有沒有辦法知道FTP其實檔案沒刪除

protected void Delete_Click(object sender, EventArgs e)
{
 ...
 FtpDel(Parameters_File[i].ToString());
 ...
 string sqlStr = @"INSERT INTO DelFTP_Log
 ...
}
protected void FtpDel(string FileName)
{
     Process p = new Process();
     p.StartInfo.FileName = "cmd.exe";
     p.StartInfo.UseShellExecute = false;
     p.StartInfo.RedirectStandardInput = true;
     p.StartInfo.RedirectStandardOutput = true;
     p.StartInfo.RedirectStandardError = true;
     p.Start();
     p.StandardInput.WriteLine("ftp");
     p.StandardInput.WriteLine("open " + FTP_IP + " " + FTP_Port);
     p.StandardInput.WriteLine(FTP_UserName);
     p.StandardInput.WriteLine(FTP_Password);
     p.StandardInput.WriteLine("delete " + FileName);
     p.StandardInput.WriteLine("bye");
     p.StandardInput.WriteLine("exit");
     p.WaitForExit();
     p.Close();
}
天黑 iT邦研究生 5 級 ‧ 2022-01-06 14:59:02 檢舉
寫log前,再用cmd指令確認檔案存不存在不行嗎?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答