输出:"was unexpected at this time",这段代码有什么问题?



>我在某本书中看到一个简单的代码,它假设在 c:\ 的根目录下返回一个文件和文件夹名称列表,前缀为"n - (文件/文件夹名称("。("n"作为列表的文件\文件夹编号(。

我试图在cmd和Powershell 5上运行它 两个输出都是:"我的旧Windows Shell脚本" "这时候出乎意料">

编辑************************** 目的是在cmd和PS中将其作为.cmd文件运行 编辑**************************

@echo off
echo my old windows shell script
set x=0
for /f "tokens=*" %%i in ('DIR /b C:') do call :output "%%i"
echo script complete!
goto :EOF
:output
set name=%1
set /A X=X+1
echo %X% = %name%
goto :EOF

要在PowerShell中运行,此代码应另存为批处理文件(.bat(,并使用命令invoke-expression运行:

$command = @'
cmd.exe /C C:workmyfile.bat
'@
Invoke-Expression $command

上面的批处理命令保存在批处理文件中,例如test.bat在 Windows10 专业版 1903 上使用CMD运行。

输出:

D:>test
my old windows shell script
1 = "CacheMenu"
2 = "Intel"
3 = "PerfLogs"
4 = "Program Files"
5 = "Program Files (x86)"
6 = "Python27"
7 = "Users"
8 = "Windows"
script complete!
D:>

最新更新