2016-03-28 89 views
-1

過去幾天我一直在學習有關ASP的一些事情。 我想這個PHP代碼行到ASP轉換,但我有點堅持了下來:如何執行命令並獲取其輸出

$online = exec('netstat -a -n |find "5816" |find "ESTABLISHED" /c') +1; 

我試圖創建一個變量來存儲數據,但無法弄清楚如何檢查端口5816和計數連接的數量。 幫助表示讚賞!

它應該基本上是一個命令運行cmd來檢查端口和否。由它建立的連接!

回答

0

執行命令獲取其輸出

您可以使用此代碼來執行上面的命令:

System.Diagnostics.Process process = new System.Diagnostics.Process(); 
process.StartInfo = new System.Diagnostics.ProcessStartInfo() 
{ 
    UseShellExecute = false, 
    CreateNoWindow = true, 
    WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden, 
    FileName = "cmd.exe", 
    Arguments = "/C netstat -a -n |find \"5816\" |find \"ESTABLISHED\" /c", 
    RedirectStandardError = true, 
    RedirectStandardOutput = true 
}; 
process.Start(); 
// Now read the value, parse to int and add 1 (from the original script) 
int online = int.Parse(process.StandardOutput.ReadToEnd()) + 1; 
process.WaitForExit(); 

此代碼啓動cmd.exe的可執行文件。使用/ C參數,你可以給它你想要執行的命令

Stackoverflow中的簡單搜索給了我數百個可以幫助你的問題。

來源:How To: Execute command line in C#, get STD OUT resultsRun Command Prompt Commands

相關問題