删除用户路径和微软头CMD c#

本文关键字:CMD 微软 用户 路径 删除 | 更新日期: 2023-09-27 18:12:54

我正在开发一个使用c#和netsh在windows 10中启动热点的应用程序。到目前为止,它似乎工作得很好,但我想得到一些信息,以及。

    private void Rfsh_Click(object sender, EventArgs e)
    {
        ProcessStartInfo Netinfo = new ProcessStartInfo("cmd");
        Netinfo.UseShellExecute = false;
        Netinfo.RedirectStandardOutput = true;
        Netinfo.CreateNoWindow = true;
        Netinfo.RedirectStandardInput = true;
        var proc = Process.Start(Netinfo);
        proc.StandardInput.WriteLine("netsh wlan show hostednetwork | findstr -i ssid");
        proc.StandardInput.WriteLine("netsh wlan show hostednetwork | findstr -i status");
        proc.StandardInput.WriteLine("exit");
        string netoutput = proc.StandardOutput.ReadToEnd();
        Rtxt.Text = netoutput;
    }

正如你可以从上面的代码中看到的,我试图让ssid和热点状态发布到Rtxt.txt,它与Microsoft头和用户路径一起做。

Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. All rights reserved. C:'Users'David'documents'visual studio 2010'Projects'NetShare'NetShare'bin'Debug>netsh wlan show hostednetwork | findstr -i ssid SSID name : "Testing" BSSID : 52:53:49:8c:f8:4f C:'Users'David'documents'visual studio 2010'Projects'NetShare'NetShare'bin'Debug>netsh wlan show hostednetwork | findstr -i status Hosted network status
Status : Started C:'Users'David'documents'visual studio 2010'Projects'NetShare'NetShare'bin'Debug>exit

我怎么能只显示ssid和状态而不显示其他东西呢?我正在考虑将输出保存到一个文本文件,并拉只是以SSID名称,BSSID和状态开始的行,但必须有一个更简单的方法。

删除用户路径和微软头CMD c#

根据martheens的回复,我能够过滤掉大多数我不想看的垃圾。通过将我的代码修改为以下

    private void Rfsh_Click(object sender, EventArgs e)
    {
        ProcessStartInfo Netinfo = new ProcessStartInfo("cmd");
        Netinfo.UseShellExecute = false;
        Netinfo.RedirectStandardOutput = true;
        Netinfo.CreateNoWindow = true;
        Netinfo.RedirectStandardInput = true;
        var proc = Process.Start(Netinfo);
        proc.StandardInput.WriteLine("netsh wlan show hostednetwork | findstr -i ssid");
        proc.StandardInput.WriteLine("exit");
        string Netoutput = proc.StandardOutput.ReadToEnd();
        string output = Netoutput;
        string[] Asplit = new string[] { "ssid" };
        string[] AOut = output.Split(Asplit, StringSplitOptions.RemoveEmptyEntries);
        foreach (var items in AOut)
        {
            Rtxt.Text = items;
        }
    }

我能够过滤输出,只显示从ssid上。我现在正在阅读末端,以清理剩余的输出。我把它标记为解了因为我基本上得到了我想要的。