gpt4 book ai didi

batch-file - 批处理——做更高级的计算

转载 作者:行者123 更新时间:2023-12-02 04:59:59 24 4
gpt4 key购买 nike

在批处理中,我无法使用 set/a 进行更高级的计算。小数不起作用;例如 set/a 5/2 只输出 2 而不是 2.5。批处理也无法处理大型计算。有没有办法只制作一个临时文件(如 vbs)或调用另一个程序(如计算器)进行计算并将其返回批处理文件?

最佳答案

下面的程序是 Batch-JScript 混合脚本的示例,它允许计算任何 JScript 表达式:

@if (@CodeSection == @Batch) @then

@echo off

rem Define an auxiliary variable to call JScript
set JScall=Cscript //nologo //E:JScript "%~F0"

for /F %%p in ('%JScall% Math.PI') do echo Intrinsic value of PI= %%p
for /F %%P in ('%JScall% 4*Math.atan(1^)') do echo Calculated value of PI= %%P
for /F %%S in ('%JScall% Math.sqrt(2^)') do echo Square Root of 2 = %%S
for /F %%t in ('%JScall% 1/3') do set oneThird=%%t
echo One third = %oneThird%
for /F %%o in ('%JScall% %oneThird%*3') do echo One third times 3 = %%o

goto :EOF

@end

// JScript section

WScript.Echo(eval(WScript.Arguments.Unnamed.Item(0)));

输出:

Intrinsic value of PI = 3.14159265358979
Calculated value of PI= 3.14159265358979
Square Root of 2 = 1.4142135623731
One third = 0.333333333333333
One third times 3 = 0.999999999999999

您可以在以下位置查看可用的 JScript 算术函数:http://msdn.microsoft.com/en-us/library/b272f386(v=vs.84).aspx

此方法允许将 JScript 代码保存在同一个 .BAT 文件中,并且比 VBScript 代码更简单、更快。

关于batch-file - 批处理——做更高级的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17235611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com