Batch file 如何知道什么是语言;“违约”;公用事业费?
我正在批量创建一个工具,用于检查磁盘驱动器是否存在错误,并使用Batch file 如何知道什么是语言;“违约”;公用事业费?,batch-file,command-line,Batch File,Command Line,我正在批量创建一个工具,用于检查磁盘驱动器是否存在错误,并使用CHKDSK命令修复它们 此命令仅适用于法国机器:echo | CHKDSK!修理/f并且不在英语机器上工作 此命令仅适用于英文计算机:echo Y | CHKDSK!修理/f和dosen不在法国机器上工作 这就是我目前所做的: @echo off Title Check Disk drives for errors and fix them by Hackoo 2016 mode con cols=65 lines=5 &
CHKDSK
命令修复它们
此命令仅适用于法国机器:echo | CHKDSK!修理/f
并且不在英语机器上工作
此命令仅适用于英文计算机:echo Y | CHKDSK!修理/f
和dosen不在法国机器上工作
这就是我目前所做的:
@echo off
Title Check Disk drives for errors and fix them by Hackoo 2016
mode con cols=65 lines=5 & Color 0A
set TmpLog=TmpLog.txt
set Log=%computername%_%~n0.txt
If Exist %TmpLog% Del %TmpLog%
If exist %Log% Del %Log%
setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=2" %%i in ('wmic logicaldisk where "drivetype=3" ^|find /i ":"') do (
set "fix=%%i"
Call :Affich !fix!
(
echo !fix! Drive
echo ************************
echo(
echo O | CHKDSK !fix! /f
echo(
echo ************************
)>> %TmpLog%
)
EndLocal
CMD /U /C Type %TmpLog% > %Log%
If Exist %TmpLog% Del %TmpLog%
echo(
cls
echo(
echo Save your work - Reboot of your computer in two (2) minutes
echo(
echo Enregistrer vos documents - Redemarrage du PC dans 2 minutes
start "" %Log%
Shutdown.exe /r /t 120 /c "Enregistrer vos documents - Redemarrage du PC dans 2 minutes"
pause>nul
Exit /b
:Affich
Cls
echo(
echo ***********************************
Echo Please wait a while Scanning "%~1"
echo ***********************************
Timeout /T 2 /nobreak>nul
所以,我正在寻找一个解决方案,让这个脚本在法语和英语机器上都能工作
有什么想法吗?因为您无论如何都依赖wmic,所以您可以使用
wmic os get LOCATE,oslanguage
查找主机设置
我认为您需要对OSLanguage值执行一个conational检查。
语言代码表:
由于我总是对地区和语言的概念感到困惑,所以我也会学习
可以在此处找到区域设置代码:因为您无论如何都依赖于wmic,所以您可以使用
wmic os get Locale,oslanguage
查找主机设置
我认为您需要对OSLanguage值执行一个conational检查。
语言代码表:
由于我总是对地区和语言的概念感到困惑,所以我也会学习
可以在此处找到区域设置代码:您可以同时执行O和Y操作
(echo Y
echo O)|CHKDSK /f !fix!
你可以同时做O和Y
(echo Y
echo O)|CHKDSK /f !fix!
您能检查错误消息并根据它执行另一个命令吗?两种语言的提示文本是什么?很好的.bat脚本,但您真正要问的不是如何知道实用程序的“默认”语言是什么?那一定在注册表的某个地方(我在
集合
输出中没有找到任何语言
类变量)。也许可以更狭隘地重铸这个Q来回答已经被否定的语言Q,尽管丹尼斯的想法可能是你最后的选择。祝你好运。法语中的相反选择是什么?如果N
也适用于英语,您可能可以首先使用管道N
,通过for/F
捕获结果,提取括号中的部分,如(Y/N)
,并获取适用的字母……我想@sheller如何知道实用程序的“默认”语言?我会编辑标题!您能检查错误消息并根据它执行另一个命令吗?两种语言的提示文本是什么?很好的.bat脚本,但您真正要问的不是如何知道实用程序的“默认”语言是什么?那一定在注册表的某个地方(我在集合
输出中没有找到任何语言
类变量)。也许可以更狭隘地重铸这个Q来回答已经被否定的语言Q,尽管丹尼斯的想法可能是你最后的选择。祝你好运。法语中的相反选择是什么?如果N
也适用于英语,您可能可以首先使用管道N
,通过for/F
捕获结果,提取括号中的部分,如(Y/N)
,并获取适用的字母……我想@sheller如何知道实用程序的“默认”语言?我会编辑标题!这是一个聪明的解决方案,谢谢!TSnake41;)这是一个聪明的解决方案,谢谢!TSnake41;)