Ir ao conteúdo
  • Cadastre-se

Shell Script È possível Abrir arquivos aleatoriamente com .bat?


Posts recomendados

Boa tarde , gostaria de saber se é possível abrir aleatoriamente arquivos em .bat ,tentei usar esse modelo mas sem sucesso.

@echo off
Set /A rnd=(%RANDOM% %% 3) + 1

Set  "V:\PROJETO MUGEN KOF\MUGEN X MCPROJECT\marvel vs capcom portraits\sil.png"
Set  "V:\PROJETO MUGEN KOF\MUGEN X MCPROJECT\marvel vs capcom portraits\cv.png"
Set  "V:\PROJETO MUGEN KOF\MUGEN X MCPROJECT\marvel vs capcom portraits\dono.png"

exit

 

Link para o post
Compartilhar em outros sites

Mais é para abir fotos aleatórias cada vez que o bat central é executado? Essas fotos estão todas na mesma pasta? E ele só deve selecionar uma imagem e fechar ou ficar selecionando fotos em sequencia todas aleatóriamente.

Link para o post
Compartilhar em outros sites

O exemplo que eu peguei está com fotos mas seria arquivo Bat que executaria o game em linha de comando abrindo um arquivo específico nele ,seria um Bat central que abre outros 5 ou mais Bat aleatório ,ele pode ficar aberto depois de executar

Pensei q o exemplo como imagens funcionária da mesma maneira só muda a extensão do arquivo , mas são Bat aleatório dentro de um Bat central .

Link para o post
Compartilhar em outros sites
  • Membro VIP

Qual é o jogo? Você vai tomar ban por script hein... rs

Link para o post
Compartilhar em outros sites

A formula para obter um número aleatório entro de uma determinada faixa é:

 

%random% * (Max - Min +1) /32768 + Min

 

Por exemplo para obter um número aleatório entre 1 e 5 e salvar em uma variável chamada "NAleatorio":

 

set /a NAleatorio=%random% * (5 - 1 +1) /32768 + 1

 

Vou mostrar um exemplo: Eu tenho um batch principal e dentro da mina área de trabalho tem uma pasta chamada "Lista Batch". Dentro de "Lista Batch" tem: Batch 01.bat, Batch 02.bat, Batch 03.bat, Batch 04.bat e Batch 05.bat

 

O batch Principal.bat vai ficar abrindo aleatóriamente os batch na pasta "Lista Batch'

 

O código dos batch 01 - 05 é: (mudando apenas o echo...)

 

@echo off
chcp 1252 > nul
echo Olá eu sou o Batch 01.bat
echo.
timeout /t 2 > nul
exit

 

O código do batch Principal.bat é:

 

@echo off
chcp 1252 > nul
SetLocal EnableDelayedExpansion

:: set /a numero=!random! * (10 - 0 + 1) / 32768 - 0
echo !random! > nul

:: Informe a pasta onde estão os arquivos aleatórios:
set Pasta=%userprofile%\desktop\Lista Batch

pushd "%Pasta%"

:: Aqui é feita a contagem de quantos arquivos bat existem na pasta:
for /f "delims=" %%a in ('dir /b /a *.bat') do (
                                                set /a Max+=1                                                
                                                set "Arquivo[!Max!]=%%a"                                         
                                               )

:repetir
set /a NAleatorio=!random! * (%Max% - 1 + 1) / 32768 + 1
start /wait "" "!Arquivo[%NAleatorio%]!"
goto :repetir

 

9aGQy9A.gif

 

Link para o post
Compartilhar em outros sites

boa noite Ricardo desculpe a demora estava  meio enrolado no trabalho , o que você fez funciona perfeitamente porém eu não consigo executar um .exe do game dentro dos arquivos batch 01.bat,batch 01.bat ... etc, a minha ideia seria que cada arquivo .bat iria abrir um .exe diferente,  onde eu iria especificar o local de cada um em seu respectivo lugar .

bat 01

@echo off
chcp 1252 > nul
echo Ikemen_GO.exe 
echo.
timeout /t 2 > nul

exit

 bat 02

@echo off
chcp 1252 > nul
echo Ikemen_GO 02.exe 
echo.
timeout /t 2 > nul

exit

eu coloquei os bats dentro da pasta do jogo onde se encontra os 5 arquivos .exe e o central também vai estar nessa mesma pasta.

esses programas é feito em linguagem "GO"  e  também usa lua .

21 horas atrás, Phoenyx disse:

Qual é o jogo? Você vai tomar ban por script hein... rs

é um game de luta feito em linguagem GO e lua ,um game de codigo aberto onde você faz jogos de luta tipo um compilado de personagens de vários games como street fighter, the king of fighter ,mortal kombat e onde a imaginação deixar

  • Curtir 1
Link para o post
Compartilhar em outros sites

Entendi, mais para que você precisa dos 5 batch, porque não chama os *.exe direto do batch principal? Tipo seleciona um dos exe aleatóriamente. Esse comando que você colocou nos batch:

 

echo Ikemen_GO 02.exe

 

Apenas exibe o nome do arquivo.exe dentro do batch ele não executa nada.

 

Se você quisesse executar os exe direto de dentro do arquivo principal basta trocar essa linha:

 

for /f "delims=" %%a in ('dir /b /a *.bat') do (

 

por essa:

 

for /f "delims=" %%a in ('dir /b /a *.exe') do (

 

 

Link para o post
Compartilhar em outros sites

troquei mas não executou nenhum exe da pasta 

@echo off
chcp 1252 > nul
SetLocal EnableDelayedExpansion

:: set /a numero=!random! * (10 - 0 + 1) / 32768 - 0
echo !random! > nul

:: Informe a pasta onde estão os arquivos aleatórios:
set Pasta=C:\Marvel você capcom ikemen1

pushd "%Pasta%"

:: Aqui é feita a contagem de quantos arquivos bat existem na pasta:
for /f "delims=" %%a in ('dir /b /a *.exe') do (
                                                set /a Max+=1                                                
                                                set "Arquivo[!Max!]=%%a"                                         
                                               )

o caminho esta correto , os exe estão na pasta e o principal também 

Link para o post
Compartilhar em outros sites
6 minutos atrás, ricardo_br disse:

set /a NAleatorio=!random! * (%Max% - 1 + 1) / 32768 + 1 start /wait "" "!Arquivo[%NAleatorio%]!"

não tinha colocado mas ainda sem sucesso 

 

@echo off
chcp 1252 > nul
SetLocal EnableDelayedExpansion

:: set /a numero=!random! * (10 - 0 + 1) / 32768 - 0
  !random! > nul

:: Informe a pasta onde estão os arquivos aleatórios:
set Pasta=C:\Marvel você capcom ikemen1

pushd "%Pasta%"

:: Aqui é feita a contagem de quantos arquivos bat existem na pasta:
for /f "delims=" %%a in ('dir /b /a *.exe') do (
                                        
set /a NAleatorio=!random! * (%Max% - 1 + 1) / 32768 + 1
start /wait "" "!Arquivo[%NAleatorio%]!"

 

Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Redes-Wi-Fi-capa-3d-newsletter.png

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!