Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
CMD/BAT Как выйти из бесконечного цикла? http://www.cyberforum.ru/cmd-bat/thread671371.html
Есть вот такая специфическая форма записи бесконечного цикла: for /L %%a in (0,0,0) do goto :nxt :nxt pause Мне нужно перейти по метке. Именно перейти, а не вообще выйти из скрипта. А...
Каталог простых примеров решенных задач BAT/CMD, с чего начать (■■■ основная тема ■■■) CMD/BAT
Тема создана для размещения "классических" примеров решения только самых распространенных задач, предназначенных как для новичков, так и в роле справки (напоминания) для профессионалов. ...
Предложения по совершенствованию раздела и закреплению в "ВАЖНЫЕ" новых тем CMD/BAT
Есть предложение создать несколько тем "закрепленных наверху раздела" с такими названиями: 1) Полный перечень всех встроенных команд 1.1. Описание функционала. 1.2. Список ключей и их...
CMD/BAT Что за вирус? У себя на компьютере обнаружил bat вирус... Подскажите что он делает Код удален. http://www.cyberforum.ru/cmd-bat/thread670942.html
CMD/BAT Копирование на флешку папки, имя которой меняется http://www.cyberforum.ru/cmd-bat/thread670712.html
Имеется папка на рабочем столе "Данные (14.10.2012)" Завтра она будет "Данные (15.10.2012)" итд. Как создать сценарий, который будет копировать ее содержимое в корневище флэшки (тоесть не саму папку...
Получить список пользователей из AD CMD/BAT
active directory групп имеется около 50 нужно получить список групп и пользователей в них в CMD net group manager net group Непонятно кто ..итд И так 50 групп, как минимум - неудобно)
CMD/BAT Скрипт в Windows XP работает правильно, а в Windows 7 — неправильно
Здравствуйте! Проблема следующая, в Windows XP скрипт отрабатывает правильно: Распаковывает архив, затем переходит в папку где лежит распакованный файл и переименовывает его, дописывая ".txt". Файлы...
CMD/BAT Копирование с заменой Всем доброе утро. Господа специалисты в этой области, прошу Вас помочь, поскольку в этом практически ничего не понимаю, но знаю что вполне реально. Мне нужно вот такой вот .bat файлик: ... http://www.cyberforum.ru/cmd-bat/thread670059.html
CMD/BAT Синхронизация содержимого нескольких папок http://www.cyberforum.ru/cmd-bat/thread670032.html
Здравствуйте. Есть у меня .bat-файл, который выполняет синхронизацию содержимого нескольких папок. Точнее сказать, резервное копирование, а не синхронизацию, т.к. копируются файлы всегда в...
CMD/BAT Считывание информации о компьютере -Название процессора (название и Ghz) -видяхи (название и скоко МБ) -опиративы (тип и скоко GB) -разрядность системы -какая винда. Добавлено через 2 часа 14 минут -Название процессора... http://www.cyberforum.ru/cmd-bat/thread669693.html
Dragokas
Эксперт WindowsАвтор FAQ
17093 / 7148 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
27.03.2013, 02:01  [ТС] 0

Полезные BAT/CMD скрипты

27.03.2013, 02:01. Просмотров 361515. Ответов 167
Метки (Все метки)

Ответ

Разноцветный вывод в консоли.
Автор: Dragokas

Ограничения кода:
1) В конце строки всегда печатается символ "двоеточие".
2) Нельзя печатать текст из символов, которые не могут быть использованы в имени файла |\:"<>?/*, а также . (точка) и другие служебные CMD.
3) Строка всегда заканчивается переносом каретки.
4) В сценарии используется символ BackSpace (для функции отступа), который нельзя создать обычным блокнотом ^_^

В строке № 57 Set _BS=здесь поставить символ BackSpace (0x08)
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
@echo off
SetLocal
mode con: cols=60 lines=10
Color 9A
 
Set Text=Maded by Dragokas
Set Color=1A
::left, right, center
Set Alignment=right
 
Call :ColorText "%text%" "%color%" "%Alignment%"
Call :ColorText "Working with Colors" "1d" "center"
Echo Press any key...
pause>nul
goto :eof
 
:ColorText %1-in.Text %2-in.Color.HEX %3-Alignment
  Call :SetTextPosition "%~1" "%~3"
  md "%temp%\_bin2" 2>nul
  pushd "%temp%\_bin2"
  echo.>"%~1"
  findstr /V /a:%~2 "1" "*"
  popd
  rd /s /q "%temp%\_bin2"
  Exit /B
 
:SetTextPosition %1-in.Text %2-in.Alignment
  if /i "%~2" neq "left" (
    call :GetConsoleWidth _ConWidth
    call :var_count "%~1" _len
    SetLocal EnableDelayedExpansion
    if /i "%~2"=="right" (
      Set /A _ind=!_ConWidth!-!_len!-1
      Call :indent !_ind!
    )
    if /i "%~2"=="center" (
      Set /A _ind=^(!_ConWidth!-!_len!^)/2
      Call :indent !_ind!
    )
    EndLocal
  )
  Exit /B
 
:GetConsoleWidth %1-out.ConsoleWidth
  For /F "skip=4 tokens=2" %%w In ('mode con') Do Set %~1=%%w& Exit /B
 
:var_count %1-in.Text %2.out.Len.of.Text
  set _var=%~1& set _count=0
  :count--
  set _var=%_var:~1%
  set /a _count+=1
  if not defined _var (set %~2=%_count%& exit /b) else (goto :count--)
 
:indent %1-in.Count.of.Spaces
  SetLocal EnableDelayedExpansion
  ::Здесь нужно заменить символ ниже на BackSpace (код 0x08) <<<<<---------
  Set _BS=
  Set _Spaces=
  for /L %%C in (1,1,%~1) do Set "_Spaces=!_Spaces! "
  <nul set /p "_Spaces=_%_BS%%_Spaces%"
  EndLocal& Exit /B


Практическое применение: см. Весна :)
P.S. Обсуждение: Цветной вывод в консоли (обсуждение кода розы)

Вернуться к обсуждению:
Полезные BAT/CMD скрипты
3
Миниатюры
Полезные BAT/CMD скрипты  
Вложения
Тип файла: rar Colors.rar (869 байт, 431 просмотров)
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2013, 02:01

Доступные уроки по CMD/BAT
Гугл и Яндекс молчат по этому поводу. Нужны ссылки на доступные (НЕ видео) уроки, чтобы изучить...

Числовые операторы в CMD/BAT
Чего они делают объясните? взято из set /? Добавлено через 1 час Унарные операторы: set...

Специальные символы в CMD/BAT
Добрый вечер. Вопрос по поводу специальных символов в BAT: &lt; , &gt; , &gt;&gt; , /? , * , ? , ; , | , &amp; ,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru