C#使用命令行打开diskpart修改盘符
参考链接:
https://www.cnblogs.com/k98091518/p/6019296.html
https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/diskpart
diskpart修改盘符
开机运行一批处理.内容如下:
diskpart /s c:\disk.txt
c:\disk.txt内容如下:#注释无效可以使用 rem
select disk 1 #1选择第二个硬盘 0选择第二个硬盘
select partition 1 #选择分区1 remove all #删除原来分区的盘符 以免分配盘符的时候冲突
select partition 3 #选择分区3
assign letter=h #设置盘符是h
remove all #删除原来分区的盘符
select partition 4 #选择分区4
assign letter=g #设置盘符是g
exit #退出diskpart

1 using System;
2 using System.Collections.Generic;
3 using System.IO;
4 using System.Linq;
5 using System.Text;
6 using System.Threading.Tasks;
7
8 namespace ConsoleApp2
9 {
10 class Program
11 {
12 static void Main(string[] args)
13 {
14 DriveInfo[] allDrives = DriveInfo.GetDrives();
15 var drive = allDrives?.Where(r => r.DriveType == DriveType.Fixed && r.Name.ToUpper().StartsWith("Z"))?.FirstOrDefault();
16 //判断是否有Z盘,没有Z盘执行命令
17 if (drive == null)
18 {
19 CommandLine(@"diskpart /s c:\disk.txt");
20 }
21
22 Console.WriteLine("盘符修改成功");
23 Console.ReadKey();
24
25 }
26
27 static void CommandLine(string cmdStr)
28 {
29 System.Diagnostics.Process myProcess = new System.Diagnostics.Process();
30 myProcess.StartInfo.FileName = "cmd.exe";//启动cmd命令
31 myProcess.StartInfo.UseShellExecute = false;//是否使用系统外壳程序启动进程
32 myProcess.StartInfo.RedirectStandardInput = true;//是否从流中读取
33 myProcess.StartInfo.RedirectStandardOutput = true;//是否写入流
34 myProcess.StartInfo.RedirectStandardError = true;//是否将错误信息写入流
35 myProcess.StartInfo.CreateNoWindow = true;//是否在新窗口中启动进程
36 myProcess.Start();//启动进程
37 myProcess.StandardInput.WriteLine(cmdStr);//执行计算机命令
38 }
39 }
40 }
disk.txt内容如下
list vol
select vol 3
assign letter=Z
select vol 2
remove
select vol 1
assign letter=D
list vol #查看所有卷
select vol 3 #选择第四个卷
assign letter=Z #把该卷改为Z盘
select vol 2 #选择第三个卷
remove #删除该卷
select vol 1 #选择第二个卷
assign letter=D #把该卷名称改为D盘
运行cmd命令输入:diskpart 回车如下图所示

C#使用命令行打开diskpart修改盘符的更多相关文章
- diskpart修改盘符
开机运行一批处理.内容如下:diskpart /s c:\disk.txt c:\disk.txt内容如下:select disk 1 #1选择第二个硬盘 0选择第二个硬盘sel ...
- windows 命令行打开浏览器
在命令行打开百度 start chrome www.baidu.com
- windows 增加右键功能 -->用命令行打开
windows 增加右键功能 -->用命令行打开 实现 注册表 以管理员权限CMD 到指定文件夹 Windows Registry Editor Version 5.00 [HKEY_CLASS ...
- Windows的命令行查看,修改,删除,添加环境变量
查看当前所有可用的环境变量:输入 set 即可查看. 显示某环境变量: 例如:echo %SystemDrive% 类似linux下面的echo $PATH这种用法. 首先明确一点:所有的在cmd命令 ...
- ubuntu 命令行下格式化U盘,磁盘分区
命令行格式化磁盘一般是:先卸载,后格式化. 先说格式化U盘的方法,格式化磁盘某个分区是同样的道理. 一般情况下U盘会挂载在/meida/<username>/<disk>目录下 ...
- Windows命令行打开常用界面
本文主要介绍Windows下命令行操作打开常用界面,使用方法为在DOS命令行下输入相关命令.可以减少多次操作界面.可以尝试在命令行执行下面提到的命令感受下,快捷键主要内容包括: 1.查看计算机的基本信 ...
- 如何开启mysql5.5的客户端服务 命令行打开方法
MySQL分为两个部分,服务器端和客户端,只有服务器端的服务开启后,才可以通过客户端登录到MySQL数据库.这里介绍如何用命令行方式开启mysql的客户端服务. 在计算机上安装好mysql软件 我 ...
- 在Win10中通过命令行打开UWP应用
近期由于需要在WinX菜单中添加几个UWP应用,但发现很难找到相应的命令行,Universal Apps 的快捷方式属性里也没有. 于是到网上搜了很久才找到一个E文的页面,试了一下确实可行,分享给大家 ...
- 解决Navicat无法连接到centos上的MySQL,但命令行可以,修改权限,MySQL密码权限受限:ERROR 1820 (HY000) ERROR 1819 (HY000)
问题分析 查看MySQL文档发现5.7版本后加入了对用户密码严格的管理规范,具体设置字段如下: validate_password_dictionary_file #插件用于验证密码强度的字典文件路径 ...
- 小技巧:使用命令行打开vscode 以及 sublime 工具
vscode手动打开vscode command + shift + p 打开命令面板(或者点击菜单栏 查看>命令面板)输入 shell 选择 install code command in P ...
随机推荐
- 基于AIO架构smarthttp开发的完整MVC框架
基于AIO架构smarthttp开发的完整MVC框架 写了篇<基于jdk自带httpserver开发的最小完整MVC框架>,就再写篇AIO的MVC DEMO启动时间:0.1s(应该算少的吧 ...
- WebApi 接口请求耗时记录
.Net Core NLog 配置 通过日志,记录每个接口请求的耗时情况 结合 <logger name="*" level="Trace" write ...
- 使用formdata在vue和django之间传递文件
在前端页面中如果有文件或者图片需要上传的场景下,通用做法是使用formdata将文件从前端传输到后台,在后台上传文件并将url保存在数据库. 当前项目是使用vue + Element UI + dja ...
- Flutter 自定义组件实战之Cupertino(iOS)风格的复选框
继上一篇Flutter自定义组件的视频短课(视频地址: https://www.bilibili.com/video/BV1ap4y1U7UB/ )后,我们继续来聊自定义组件.视频中我为大家详解了Cu ...
- 【Redis】面试题 GEO地理位置信息
目录 面试 1 http协议详情,http协议版本,http一些请求头 2 GET请求和POST请求的区别 3 如何实现服务器给客户端发送消息,websocket是什么? 4 悲观锁和乐观锁,如何实现 ...
- Linux--修改会话超时时间
控制用户在一段时间内没有活动时会话的自动注销时间 1.修改ssh配置文件(适用于SSH会话) vim /etc/ssh/sshd_config ClientAliveInterval 1800 #秒 ...
- OOALV 不同ALV调用相同屏幕
一.一次创建,多次调用 当使用OOALV开发平台,存在点击不同位置,跳转到一个ALV,除ALV内容不一致以外,其他都一样. 常规方法,即跳转到多少个ALV,就创建多少个SCREEN.而屏幕对应的输入输 ...
- 【HZERO】定时任务
- CF(codeforces)如何保持紫名及以上?
虽然我还是连绿名都没,但还是想学习大牛们的学习方法,加油尽早上分. 转自知乎 之前在 CF 上看到一条不错的评论 https://codeforces.com/blog/entry/66715?#co ...
- 0x05 基本算法-排序
A题:Cinema 经典离散化例题,把电影的语言与字幕和观众懂的语言放进一个数组,然后离散化. 最后统计快乐人数. const int N = 200006; int n, m, a[N], x[N] ...