Windows批处理帮助循环/ l

时间:2017-04-08 22:51:58

标签: batch-file for-loop

您好我想帮助tic tac toe .. 当玩家检查第1和第2个案件时,我想做点什么。

var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io')(server);
var port = process.env.PORT || 3000;

app.use(express.static(__dirname + '/public'));

server.listen(port, function () {
  console.log('Server listening at port %d', port);
});

io.on('connection', function(socket){
	console.log('connection' + socket.id)

	socket.emit('ping', {
		data: 'ping',
	});
});

由于控制台的长度和井字网格,它被命名为案例9 13 17。我想要帮助和解释我怎么能做%% a + %% a,我试过

@echo off
setlocal EnableDelayedExpansion EnableExtensions
set case9=player
set case13=player
set case17=player
for /l %%a in (9, 4, 17) do (
    set x_case%%a=!case%%a!
    if "!x_case%%a!"=="player" if "!x_case%%a+%%a!"=="player" (
        batbox /g 17 14 /d " X "
    )
)
pause

但它仍然无法正常工作,因为我们正在申请... 谢谢你的帮助,你能帮我找一个标题吗,我不知道我能说什么标题。

1 个答案:

答案 0 :(得分:0)

不确定您要比较的内容 - 但即使您的代码按预期运行,您也会将case9case18case13进行比较case26case17case34

即使添加4,您也要将case17case21进行比较

如果您想查看至少有两个变量是否包含player,那么

@echo off
setlocal EnableDelayedExpansion EnableExtensions
set case9=player
set case13=player
set case17=player
set match=0
for /l %%a in (9, 4, 17) do (
    if "!case%%a!"=="player" set /a match+=1
)
if %match% geq 2  batbox /g 17 14 /d " X "

pause

现在你真正想要的还不清楚。如果找到2或3(batbox reater或G ual to 2)"播放器" s,则上述行将执行EQ。如果您希望完全 2,请将geq更改为equ。如果他们必须是case13以及case9case17,那么它可能更容易使用

if "%case13%"=="player" if "%case13%"=="%case9%" (batbox /g 17 14 /d " X "
) else if "%case13%"=="%case17%" (batbox /g 17 14 /d " X ")