Меню Рубрики

Программирование через командную строку windows

Работа в командной строке Windows

Запуск командной строки

Наиболее часто встречающиеся рекомендации по запуску звучат так: Пуск, выполнить, cmd . В меню пуск присутствует пункт Выполнить . Он запускает программу, которая позволяет передавать единичные команды системе Windows. В данном случае команда cmd запускает исполняемый файл cmd.exe , находящийся в папке system32 .

На некоторых версиях Windows пункт меню выполнить по умолчанию убран. В этом случае жмёте + R , вводите cmd , далее Enter . Также можно запустить командную строку непосредственно из папки system32, сделав ярлык для запуска на рабочем столе (кликаем на cmd.exe правой клавишей мыши и в меню выбираем пункт Отправить/Рабочий стол ) или же через диспетчер задач (кнопка новая задача — cmd).

По умолчанию в командной строке нельзя работать мышью (перемещать курсор или выделять текст). Это неудобно вообще и новичкам в особенности. К тому же чёрный экран выглядит как-то слишком мрачно и уныло. Поэтому после запуска командной строки

нужно будет изменить её настройки. Жмём правой клавишей на окне cmd и выбираем умолчания . Стоит сразу отметить, что настройки умолчаний относятся к cmd.exe в целом, а свойства — к конкретному открытому окну.

В появившемся окне свойств командной строки видим четыре вкладки:

На вкладке Параметры стоит отметить пункты отбрасывать повторения (чтобы снизить заполнение буфера команд) и выделение мышью (чтобы можно было использовать мышь в работе).

На вкладках Шрифты и Цвета всё просто: выбираете размер, тип и цвет шрифта, а также фоновый цвет окна. Отмечу только, что размер шрифта влияет на размеры окна командной строки, поэтому его надо выставлять до размеров окна, а не после.

Во вкладке Расположение задаются размеры окна и его начальное расположение при запуске. Я так до конца и не понял в каких единицах представлены величины, поэтому размер советую выставлять, руководствуясь окном предпросмотра слева.

Стоит отметить, что размер буфера влияет на вместимость окна, т.е. на количество информации, которое без проблем можно будет просмотреть после вывода на экран результатов выполнения команды (горизонтальная и вертикальная полосы прокрутки). Если задать равные размеры для окна и буфера, то в окне будет отображаться только хвост выводимой информации, который туда вместится.

Также если строка не впишется в ширину окна это приведёт к её переносу. Воспринимать представленную таким образом информацию менее удобно. Поэтому буфер я ставлю всегда намного больше размеров окна. Это позволяет просмотреть большие объёмы информации, воспользовавшись полосами прокрутки справа и снизу. Картинка ниже кликабельна. На превью показано начало вывода команды dir для папки system32, а нажав на превью можно увидеть хвост вывода (обратите внимание на полосу прокрутки справа — данных очень много).

Команды командной строки

Консоль настроена, теперь осталось ознакомить вас с командами командной строки. Для вывода их полного списка достаточно набрать команду help .

Командная строка запоминает команды, которые вы вводите. Листать их можно клавишами ⇑ и ⇓ . Можно просматривать содержимое папки при помощи клавиши Tab ( Shift + Tab листает в обратном порядке). Можно пролистать файлы на конкретную букву или буквы. Например, напечатав букву s и нажимая Tab , можно пролистать только файлы и папки, начинающиеся на эту букву ( system, system32, system.ini и т.д.) . Как это можно использовать:

Например, вам надо перейти из корня диска C в папку system32, найти и запустить в ней контрольную панель. Можно просто напечатать:

Но это не всегда быстро и удобно, к тому же не всегда знаешь – что конкретно надо набирать. Поэтому можно набрать команду cd, затем после пробела набрать wi, пролистать клавишей Tab до папки Windows, поставить после неё слэш, набрать буквы sy, пролистать клавишей Tab до папки system32, затем опять слэш и то же самое с control.exe.

C: cd windows\ system32\ control.exe

Этот способ с табом куда быстрее в большинстве случаев, чем простой набор, так как названия файлов и папок могут быть длинными.

При включении поддержки мыши копировать информацию из командной строки можно выделив участок текста мышью и нажав Enter . Правая клавиша мыши, напротив, вставляет информацию из буфера обмена в командную строку.

В заключение статьи скажу, что cmd.exe — это просто программа ввода-вывода, такая же, как и блокнот. Разумеется, есть более продвинутые аналоги, которыми тоже можно пользоваться. Одна из таких программ — Console Portable

Кстати, в операционной системе GNU Linux командную строку можно вызывать прямо из папки. При этом строка откроется сразу с адресом папки и его не надо будет набивать вручную. В Windows для того, чтобы открыть командную строку непосредственно в папке, необходимо, зажав Shift , нажать правую клавишу мыши и выбрать в меню пункт «Открыть окно команд».

Также можно добавить эту возможность (и целый ряд других) с помощью программы расширения контекстного меню FileMenu Tools:

Источник

Основные возможности командной строки (CMD) Windows

В этой статье описаны основные возможности командной оболочки Windows. Это полезно знать и использовать для написания скриптов.

Основы

Описание

CMD — это командная оболочка операционных систем Windows. Она работает в двух режимах: интерактивном (используется взаимодействие с пользователем) и пакетном (для написания сценариев и программ).

  • содержится во всех ОС Windows по умолчанию, поэтому никакого дополнительного ПО не требуется устанавливать для ее использования
  • написан пакетный файл в 90% случаев заработает на любой ОС Windows
  • есть системные скрипты используемых операционная система в своей работе и зная основы CMD вы сможете легко их понимать и редактировать под свои нужды
  • научившись использовать командную оболочку для написания скриптов вы сможете с таким же успехом использовать ее в интерактивном режиме, для работы и обслуживания ОС Windows
  • удобно писать небольшие сценарии и программы для обслуживания операционной системы
  • в интернете материалов и примеров использования этой оболочки достаточно для того, чтобы изучить основы работы и тонкости использования этого программного обеспечения
  • возможности CMD довольно ограничены и написать серьезный проект будет трудно

Запуск

Для запуска командной оболочки нужно открыть Пуск\Все программы\Стандартные\Командная строка или нажать Пуск и в поиске ввести команду cmd . После запуска откроется окно командной строки.

Помощь

Для помощи существует команда help . Набрав ее вы получите список команд и их краткое описание. Для детального описания команды интересующей вас нужно ввести help , или /?

Утилита echo и вывод команд

Утилита echo выводит сообщение на экран и переключает режим отображения команд на экране. Результатом команды

будет вывод на экран

Для вставки пустой строки используется команда

Режим отображения команд на экране.

При включении данного режима на экран выводятся не только результаты команд но и сами команды. При написаны скриптов этот режим используется для их отладки. команда

без параметров показывает статус режима вывода команд на экран (включен или выключен).

По умолчанию режим вывода команд на экран включен. Для того чтобы его выключить введите следующую команду

Для включения режима вывода команд на экран введите

Этот режим можно включать и выключать как для целого скрипта так и его частей, вставляя эти команды в соответствующие места кода.

Для включения этого режима для одной команды перед ней нужно вставить символ @.

Для того, чтобы в скрипте выключить режим отображения команд на экран поместите следующую команду на начало сценария

Операторы командной строки

Результаты выполнения команды можно передать другой команде, или записать в файл. Рассмотрим операторы командной строки.

команда1 | команда2 — результат получен после выполнения команды1 служить входным параметром для команди2, удобно использовать для передачи данных между командами

Операторы перенаправления результатов выполнения > >> :

[путь] имя файла — команда принимает содержимое файла как входной параметр

[путь] имя файла — результат выполнения команды будет записано в файл, если файл не существует он будет создан, если файл существует он будет перезаписан

> [путь] имя файла — результат выполнения команды будет записано в файл, если файл не существует он будет создан, если файл существует результат допишеться в конец файла

[путь] имя файла> [путь] имя файла — данные с первого файла передадутся команде как параметр, а результат выполнения команды будет записан во второй файл

команда1 & команда2 — последовательное выполнение команд, сначала выполнится команда1, а затем команда2

команда1 && команда2 — команда2 исполнится только в случае успешного выполнения команды1

команда1 || команда2 — команда2 исполнится только в случае, если команда1 завершилась с ошибкой

(команда1 & команда2) && команда3 — группировка команд, команда3 исполнится только в случае, если команда1 и команда2 выполнятся успешно

Математические выражения.

+ — добавление
— вычитание
/ — деления
* — умножение
% — модуль
+= — увеличение и присвоения на соответствующее число
-= — уменьшение и присвоения на соответствующее число
*= — умножение и присвоения на соответствующее число
/= — деление и присвоение на соответствующее число

== — равно
EQL — ровное
NEQ — не равно
LSS — меньше
LEQ — меньше или равно
GTR — более
GEQ — больше, или равно

Побитовые операторы (работа с двоичными данными).

Комментарии

Для того чтобы оставить комментарий в коде сценария используется команда rem

Работа с переменными

Описание работы с переменными в командной строке.

Команда set

За работу со сменными отвечает команда set .

Для просмотра всех созданных переменных нужно ввести команду set без параметров.

Для просмотра значения конкретной переменной нужно ввести команду

Для просмотра всех переменных которые начинаются test (например переменные test1, test2 и т.д.) нужно ввести команду

Версия Windows и архитектура системы

ver — команда выводит версию операционной системы.

Версія ОСОС 1.04Windows 1.02.11Windows 2.03Windows 3.04.0.950Windows 954.00.1111Windows 95 OSR24.00.1381Windows NT 4.04.10.1998Windows 984.10.2222Windows 98 SE4.90.3000Windows ME5.00.2195Windows 20005.1.2600Windows XP5.2.3790Windows XP Professional x64 EditionWindows Home ServerWindows Server 2003 5.2.3790.1180Windows Server 2003, Service Pack 15.2.3790.12186.0.6000.16386 Windows Vista, RTM (Release to Manufacturing)6.0.6000Windows VistaWindows Server 20086.0.6001Windows Vista SP1Windows Server 2008 SP16.0.6002Windows Vista SP2Windows Server 2008 SP26.1.7600.16385Windows 7, RTM (Release to Manufacturing)Windows Server 2008 R2, RTM (Release to Manufacturing)6.1.7600Windows 7Windows Server 2008 R26.1.7601Windows 7 SP1Windows Server 2008 R2 SP16.2.9200.16384Windows 8, RTM (Release to Manufacturing)6.2.9200Windows 8Windows Server 20126.3.9600Windows 8.1Windows Server 2012 R2

Для определения архитектуры компьютера существует переменная PROCESSOR_ARCHITECTURE , для ее вывода введите команду

x86 — 32-битная версия Windows

AMD64 — 64-битная версия Windows

Примеры

Копирование новых файлов из одной папки в другую

Задача следующая. Есть локальная папка в которую Медок делает резервные копии баз данных раз в определенный период (через планировщик Медка настроено в пн-пт в обед 13:10), из этой папки нужно копировать новые файлы в сетевую папку на случай выхода из строя локального компьютера » колонки для компьютера. Основное условие, это копирование только новых файлов, которые появились в локальной папке с бэкапа.

Для этой задачи есть команда replace которую нужно использовать с ключом /A .

Вот пример скрипта который копирует новые файлы из локальной папки в сетевую

123456789101112131415161718192021222324252627@echo offrem Путь к локальной папкеset localbackupdir=pathtolocaldirrem Путь к сетевой папкеset remotebackupdir=pathtoremotedir�ь к робочей папкеset workdir=pathtoworkdirrem Путь к папке с логамиset logdir=pathtologdirrem Название лога который содержит дату созданияset logname=log-%date:

3,2%.txt rem Запуск проверокrem Проверка существует ли папка с локальними бекапамиif exist «%localbackupdir%» (echo verification 1 is complited > «%logdir%\%logname%») else (mkdir «%localbackupdir%»)rem Проверка существует ли папка для логовif exist «%logdir%» (echo verification 2 is complited >> «%logdir%\%logname%») else (mkdir «%logdir%»)rem Проверка существует ли сетевая папкаif exist «%remotebackupdir%» (echo verification 3 is complited >> «%logdir%\%logname%») else (echo error 10: remote backup directory «%remotebackupdir%» is not exist >> «%logdir%\%logname%» & exit 10) rem Запуск копированияcd /d «%workdir%» || (echo error 11: problem is workdir «%workdir%» >> «%logdir%\%logname%» & exit 11)replace «%localbackupdir%\*» «%remotebackupdir%» /A >> «%logdir%\%logname%»if errorlevel 1 (echo error 13: replays is over whith error %errorlevel% >> «%logdir%\%logname%» & exit 13) echo replays is complited >> «%logdir%\%logname%»exit 0

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Программирование под windows mobile free pascal
  • Программирование на ассемблере под windows
  • Программирование на assembler под windows 64 bit
  • Программирование драйверов windows солдатов
  • Программа эмулятор андроид для windows 7