这是我当前的文件(它应该创建一个文件夹,goe到该文件夹,然后在 文件夹中创建一个批处理文件):
@echo off
echo md C:\"Program Files (x86)"\AcceleratorTool\
echo cd C:\"Program Files (x86)"\AcceleratorTool\
>AcceleratorTool.bat (
echo taskkill /f /im chrome.exe
)
尽管我放了cd C:\"Program Files (x86)"\AcceleratorTool\
,但它仍然在C:\Windows\System32
中创建文件。
这可能是因为我必须(并且确实)以管理员身份运行原始批处理文件,我假设这是相关的。
答案 0 :(得分:1)
你的剧本中有一些错误。这是固定功能版本:
@echo off
REM create the target directory
mkdir "C:\Program Files (x86)\AcceleratorTool" 2>nul
REM stores your current directory and changes the to the target directory
pushd "C:\Program Files (x86)\AcceleratorTool"
REM echos the command into the .bat file
echo taskkill /f /im chrome.exe > AcceleratorTool.bat
REM returns to the original directory
popd
评论解释了功能。不要忘记您必须拥有访问Program Files (x86)
的正确权利!
答案 1 :(得分:1)
要编写文件,没有理由将目录更改为目标位置:
@Echo Off
Set "dirName=AcceleratorTool"
Set PROCESSOR_ARCHITE|Find "64">Nul && (
Set "dirBase=%ProgramFiles(x86)%\%dirName%"
) ||Set "dirBase=%ProgramFiles%\%dirName%"
If Not Exist "%dirBase%\%dirName%\" MD "%dirBase%\%dirName%" 2>Nul ||Exit /B
Echo TaskKill /F /IM chrome.exe /T>"%dirBase%\%dirName%\%dirName%%~x0"