Как изменить цвет текста cmd с помощью пакета windows script каждые 1 секунду
Команда цвета связана с изменением цвета команды windows promt background/text
цвет 0A - где 0 - цвет фона, а A - цвет текста
Я хочу изменить этот цвет текста каждые 1 секунду в пакете windows script, используя массив с 1,2,3,4,5,6,7,8,9, A, B, C, D, E, F - цветовые коды.
0 = Black 8 = Gray
1 = Blue 9 = Light Blue
2 = Green A = Light Green
3 = Aqua B = Light Aqua
4 = Red C = Light Red
5 = Purple D = Light Purple
6 = Yellow E = Light Yellow
7 = White F = Bright White
команда должна проходить каждую секунду, подобную этой
color 01
color 02
color 03
....
color 0E
color 0F
и для них я нашел немного script, но я не уверен, как заставить его работать, чтобы изменить цвет на каждые 1 секунду!
for /L %%i in (1,1,%n%) do echo !array[%%i]!
или
@echo off CLS
for /l %%a in (15,-1,1) do (
color 0A
cls
)
pause
или
SET COUNTDOWN=15
:COUNTDOWNLOOP
IF %COUNTDOWN%==0 GOTO END
color 0A && %R1%
CLS
SET /A COUNTDOWN -=1
GOTO COUNTDOWNLOOP
:END
Ответы
Ответ 1
Это должно соответствовать счету. Звучит как супер-раздражающая вещь, которую нужно продолжать, но там она есть:
@echo off
set NUM=0 1 2 3 4 5 6 7 8 9 A B C D E F
for %%x in (%NUM%) do (
for %%y in (%NUM%) do (
color %%x%%y
timeout 1 >nul
)
)
Ответ 2
Попробуйте это script. Это может писать любой текст в любой позиции экрана и не использовать временные файлы или исполняемые файлы .com,.exe. Просто сделайте так, чтобы у вас был исполняемый файл "debug.exe" в папках windows\system или windows\system32.
http://pastebin.com/bzYhfLGc
@echo off
setlocal enabledelayedexpansion
set /a _er=0
set /a _n=0
set _ln=%~4
goto init
:howuse ---------------------------------------------------------------
echo ------------------
echo ECOL.BAT - ver 1.0
echo ------------------
echo Print colored text in batch script
echo Written by BrendanLS - http://640kbworld.forum.st
echo.
echo Syntax:
echo ECOL.BAT [COLOR] [X] [Y] "Insert your text"
echo COLOR value must be a hexadecimal number
echo.
echo Example:
echo ECOL.BAT F0 20 30 "The 640KB World Forum"
echo.
echo Enjoy ;^)
goto quit
:error ----------------------------------------------------------------
set /a "_er=_er | (%~1)"
goto quit
:geth -----------------------------------------------------------------
set return=
set bts=%~1
:hshift ---------------------------------------------------------------
set /a "nn = bts & 0xff"
set return=!h%nn%!%return%
set /a "bts = bts >> 0x8"
if %bts% gtr 0 goto hshift
goto quit
:init -----------------------------------------------------------------
if "%~4"=="" call :error 0xff
(
set /a _cl=0x%1
call :error !errorlevel!
set _cl=%1
call :error "0x!_cl! ^>^> 8"
set /a _px=%2
call :error !errorlevel!
set /a _py=%3
call :error !errorlevel!
) 2>nul 1>&2
if !_er! neq 0 (
echo.
echo ERROR: value exception "!_er!" occurred.
echo.
goto howuse
)
set nsys=0123456789abcdef
set /a _val=-1
for /l %%a in (0,1,15) do (
for /l %%b in (0,1,15) do (
set /a "_val += 1"
set byte=!nsys:~%%a,1!!nsys:~%%b,1!
set h!_val!=!byte!
)
)
set /a cnb=0
set /a cnl=0
:parse ----------------------------------------------------------------
set _ch=!_ln:~%_n%,1!
if "%_ch%"=="" goto perform
set /a "cnb += 1"
if %cnb% gtr 7 (
set /a cnb=0
set /a "cnl += 1"
)
set bln%cnl%=!bln%cnl%! "!_ch!" %_cl%
set /a "_n += 1"
goto parse
:perform --------------------------------------------------------------
set /a "in = ((_py * 160) + (_px * 2)) & 0xffff"
call :geth %in%
set ntr=!return!
set /a jmp=0xe
@for /l %%x in (0,1,%cnl%) do (
set bl8086%%x=eb800:!ntr! !bln%%x!
set /a "in=!jmp! + 0x!ntr!"
call :geth !in!
set ntr=!return!
set /a jmp=0x10
)
(
echo.%bl80860%&echo.%bl80861%&echo.%bl80862%&echo.%bl80863%&echo.%bl80864%
echo.q
)|debug >nul 2>&1
:quit
Ответ 3
echo off & cls
set NUM=0 1 2 3 4 5 6 7 8 9 A B C D E F
for %%y in (%NUM%) do (
for %%x in (%NUM%) do (
color %%y%%x & for /l %%A in (1,1,200) do (dir /s)
timeout 1 >nul
)
)
pause
Ответ 4
Я делаю что-то очень похожее. Я просто вдаваюсь в кодирование, поэтому это может быть не самый эффективный способ сделать это, но я так и сделал:
@ECHO OFF
ECHO HELLO
ping localhost -n 1 >nul
cls
color 01
ECHO HELLO
ping localhost -n 1 >nul
cls
color 02
ECHO HELLO
и так один и т.д.
Ответ 5
Я создал простой способ сделать это и сделал его простым, насколько это возможно.
При "паузе" в конце вы продолжите свой код.
Изображение выполненного кода
# [CODE] [DESCRIPTION]
#
# echo. & starts a new line
# echo. skips a line
# PainText 08 08 is color code for gray Type "color ?" for color codes
# " Red" The space befor text gives space between the word befor it
@echo off
cls && color 08
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do (set "DEL=%%a")
<nul set /p=""
call :PainText 08 "Gray"
call :PainText 04 " Red"
call :PainText 02 " Green"
call :PainText 08 " Gray"
echo. &
call :PainText 02 "Line 2 Green No space"
echo. &
echo.
call :PainText 01 "H"
call :PainText 02 "E"
call :PainText 03 "L"
call :PainText 03 "L"
call :PainText 05 "O"
echo.
goto :end
:PainText
<nul set /p "=%DEL%" > "%~2"
findstr /v /a:%1 /R "+" "%~2" nul
del "%~2" > nul
goto :eof
:end
echo.
pause
Ответ 6
echo off & cls
title never buy these they're so easy to make... hmu for source code
-%pinging:IP%-
color 0D
echo =================================================================
echo i flex on my unhittable ovh, you flex on an easy to hit trash ovh
echo =================================================================
set /p IP=Enter IP:
:top
title :: this skid boutta get slammed FeelsGoodMan :: -%pinging:IP%-
PING -n 1 %IP% | FIND "TTL="
IF ERRORLEVEL (echo stop flexing on ovh i down them with ease, mine on the other hand is unhittable.):
set /a num=(%Random%%%9)+1
color %num%IP ping -t 2 0 10 127.0.0.1 >nul
GoTo top
Это ip-пинг, в котором есть пользовательские сообщения о тайм-ауте. Если что-то, например, веб-сайт или сервер не работает, также может использоваться для загрузки людей в автономном режиме, я могу сделать инструмент, который открывает файлы и отдельные пингеры, в зависимости от вашего вход и встроенный инструмент геолокации.
Ответ 7
по конкретным цветовым кодам компьютера можно назначить разный цвет RGB, отредактировав значения цвета в свойствах cmd-окна. Легко нажмите цвет на цветовой палитре и измените их значения rgb.