如何在Windows中为diskpart cmd创建批处理文件,可以锁定(只读)和
发布时间:2020-12-14 05:38:40 所属栏目:Windows 来源:网络整理
导读:我正在尝试创建批处理文件来打开/关闭驱动器的只读模式. 我创建了两个调用diskpart的批处理文件,以及两个包含要传递给diskpart的命令的文本文件. 当我单独运行diskpart命令时,它们工作;但是当我通过批处理文件和文本文件运行它们时,它们不起作用. 用于锁定磁
我正在尝试创建批处理文件来打开/关闭驱动器的只读模式.
我创建了两个调用diskpart的批处理文件,以及两个包含要传递给diskpart的命令的文本文件. 当我单独运行diskpart命令时,它们工作;但是当我通过批处理文件和文本文件运行它们时,它们不起作用. 用于锁定磁盘的批处理文件 diskpart /s readonlyfile.txt > logfile .txt pause 批量文件解锁磁盘 diskpart /s offreadonlyfile.txt pause readonlyfile.txt(用于锁定磁盘) diskpart list disk select disk 1 attributes disk set readonly offreadonlyfile.txt(用于解锁磁盘) diskpart list disk select disk 1 attributes disk clear readonly 解决方法
您需要管理权限才能使用diskpart,如果您没有,则批处理脚本将以静默方式失败.要自动请求管理权限,可以将visual basic与批处理脚本结合使用.您还可以使用简单重定向为您自动创建临时文件,并在完成后删除它们
@echo off setlocal enabledelayedexpansion REM --> Check for permissions >nul 2>&1 "%SYSTEMROOT%system32cacls.exe" "%SYSTEMROOT%system32configsystem" REM --> If error flag set,we do not have admin. if '%errorlevel%' NEQ '0' ( echo Requesting administrative privileges... goto UACPrompt ) else ( goto gotAdmin ) :UACPrompt echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%getadmin.vbs" echo UAC.ShellExecute "%~s0","","runas",1 >> "%temp%getadmin.vbs" "%temp%getadmin.vbs" exit /B :gotAdmin if exist "%temp%getadmin.vbs" ( del "%temp%getadmin.vbs" ) pushd "%CD%" CD /D "%~dp0" set /p "mode=Do you ant to set read or write: " :: call the first 4 letters of the string call :%mode:~0,4% pause endlocal goto eof :read echo.diskpart>readonlyfile.txt echo.list disk>>readonlyfile.txt echo.select disk 1>>readonlyfile.txt echo.attributes disk set readonly>>readonlyfile.txt diskpart /s readonlyfile.txt>logfile.txt del readonlyfile.txt exit /b 0 :writ echo.diskpart>offreadonlyfile.txt echo.list disk>>offreadonlyfile.txt echo.select disk 1>>offreadonlyfile.txt echo.attributes disk clear readonly>>offreadonlyfile.txt diskpart /s offreadonlyfile.txt del offreadonlyfile.txt exit /b 0 UAC提示脚本的来源:https://sites.google.com/site/eneerge/scripts/batchgotadmin (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 来自命令提示符的Windows 8 Notification Service通知
- LeetCode-239 Sliding Window Maximum
- NTFS-$Volume丢失导致分区无法正常打开一例
- 有没有一个温和的方式来停止进程使用Windows PowerShell?
- Windows下nginx配置多台服务器做负载均衡
- windows-8 – 如何在Windows 8中将sqlite表和列映射到c#类
- hyper-v – Microsoft Emulated IDE Con??troller Error
- windows – 如何使用批处理文件获取文件的属性
- wix – 一个MSI中的两个PathEdit对话框(错误2343 – 指定的
- wpf – 使用WiX在应用程序的主要升级中从Windows 7任务栏中
推荐文章
站长推荐
- windows-7 – 如何在批处理文件中启动具有管理员
- Windows – 如何将MS SQL Server从32位升级到64位
- 从命令行在Windows上查找CPU时间
- Windows 包管理工具 Scoop 安装部署
- windows-server-2008 – 使用资源监视器记录?
- windows-server-2012 – 无法在Windows Server 2
- windows-vista – 多种语言的Vista语音识别
- windows – 使用$in参数检查Nagios
- Windows 8.1找回消失的【全形半形】切换功能,切
- OpenCV3.4.1+opencv_contrib编译:windows 10
热点阅读