1. Командная строка Windows

1. Командная строка Windows

В данном разделе мы познакомимся с возможностями командной строки операционной системы Microsoft Windows на примере часто используемых команд.

Студентам предстоит освоить следующие навыки:

работа с файловой системой в командной строке;

создание архивных и пакетных файлов;

настройка переменных среды окружения.

На защите лабораторной работы студент должен уметь выполнять любое задание и объяснять смысл выполненной команды.

Основные понятия

Интерфейс операционной системы (ОС) – это средство общения пользователя с ОС. С помощью интерфейса пользователь обращается к различным функциям ОС, таким как запуск программ или копирование файлов, и получает сообщения ОС.

Командная строка – это интерфейс ОС, работающий в текстовом режиме следующим образом:

– ОС выводит на экран приглашение;

– пользователь вводит команду и нажимает [Enter];

– ОС выводит результаты на экран.

Приглашение к вводу команд содержит имя диска и текущий каталог, например:

C:\User\Valentin>

Пользователь вводит с клавиатуры команду и ее параметры, разделенные пробелами, например:

dir /b *.txt

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

Команды ОС, например dir, выполняет сама ОС, поэтому на диске нет отдельных файлов для каждой команды, например dir. exe. К исполняемым файлам относятся прикладные программы (приложения) *.com и *.exe, а также пакетные файлы *.bat и *.cmd. Пакетные файлы – это текстовые файлы, содержащие последовательность команд ОС.

Регистр букв. Команды можно вводить и заглавными (большими) и строчными (маленькими) буквами – командной строке Windows это будет понятно: CD, cd, Cd, cD, см. рис.


Рис. Одна команда в разном регистре


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

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


Рис. Квадратные скобки не используем!


Квадратные скобки – это первая проверка внимательности и понимания. Если студент читает справку по команде и потом вводит квадратные скобки, значит он ничего не понял. И таких студентов с каждым годом встречается всё больше.

На самом деле в процессе обучения в вузе мы тренируем студентов читать и понимать прочитанное. В школе от учеников требуется только скорость чтения и ответов. А здесь мы требуем понимание. Придётся использовать голову не только для еды, но и для обучения.


Задание

Найдите в Википедии сведения про регистр букв и чувствительность к регистру символов.

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

Командную строку можно запустить разными способами:

1) через главное меню Пуск:

Start – Windows System – Command Prompt

2) через поле поиска:

Type here to search – cmd – Command Prompt

4) с помощью «горячих клавиш»:

нажмите комбинацию клавиш [Win + R] – Run – cmd – [OK] или [Enter], см. рис.


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


Окно командной строки содержит приглашение, содержащее полный путь к текущему каталогу. Мигающий курсор указывает место для ввода следующей команды, см. рис. Чтобы просмотреть предысторию, можно использовать полосу прокрутки.

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

Чтобы закрыть командное окно, нажмите кнопку [x] в правом верхнем углу окна либо введите на клавиатуре команду exit – «выйти». В переводе эта команда могла бы звучать так: «Закройте это окно!»


Рис. Окно командной строки


Задание

– Запустите командную строку описанными способами.

– Настройте размер шрифта и цвет текста и фона.

– Введите команду ver и нажмите [Enter].

– Запишите версию ОС.

– Найдите в командном окне все элементы интерфейса:

– — Приглашение

– — Мигающий курсор

– — Команду

– — Ответ ОС

– — Полосу прокрутки

– Закройте командное окно.

Справочная система

Команда help выводит на экран описание указанной команды. Например, чтобы изучить команду dir, нужно ввести команду:

help dir

Длинный текст справки выводится на экран постранично.

Некоторые команды и программы сами могут выводить справку при указании вопросительного знака в качестве параметра:

dir /?

Квадратные скобки в тексте справки отмечают необязательные аргументы. Например, выражение

dir [диск: ]

означает, что допускаются следующие варианты использования команды dir:

dir

dir c:

dir d:


Задание

Вызовите справку для команды dir описанными выше способами.

История ввода команд

Все команды, введенные течение текущего сеанса работы командного окна, сохраняются в памяти. Их можно вернуть стрелками [Вниз] и [Вверх] и снова выполнить.

Содержимое командной строки можно редактировать клавишами [Влево], [Вправо], [Home], [End], [Del], [BackSpace].

Клавиша [Backspace] находится на клавиатуре над клавишей [Enter]. Эта клавиша удаляет символ слева от курсора.

Английское слово backspace означает «вернуться на одну позицию назад». Эта клавиша была ещё на печатных машинках, см. рис. Тогда она просто передвигала печатающую головку на один символ влево. Русское название – «Забой». Можно было вернуться и напечатать другую букву поверх первой – если надо было исправить ошибку – то есть «забить» одну букву другой, перепечатать символ. А теперь на компьютере это ещё и стирание символа слева от курсора – с той же целью – исправить опечатку.

Обратите внимание на расположение букв на клавишах печатной машинки и на компьютерной клавиатуре. И для этого есть причина. В центре расположены буквы, которые встречаются чаще всего – чтобы не приходилось далеко передвигать пальцы при печати. Ближе к краям находятся более редкие буквы.

Клавиша «Забой» тоже осталась на своём привычном месте.


Рис. Клавиша «Забой» на печатающей машинке


Клавиша [Del] удаляет символ справа от курсора.

Для полного удаления текущей команды нажмите [Esc].


Задание

– Используя клавиши [Up] и [Down], просмотрите историю ввода.

– Верните команду help dir

– Отредактируйте команду, чтобы получить help help

– Нажмите [Enter]

– Верните предыдущую команду

– Нажмите [Esc]

– Прочитайте описание [Backspace] на Википедии

Команда DIR

Для просмотра содержимого каталога используется команда dir. Английское слово directory переводится как «каталог, папка, директория».

На экран выводится список всех каталогов и файлов, находящихся в текущем каталоге диска с указанием их расширения и размеров, даты и времени создания, см. рис.

Каталоги помечаются символами

.

Примеры использования команды:

dir /b – вывод только названий файлов

dir /d – вывод списка в несколько колонок

dir /oe-s – отсортированный по расширениям список имен каталогов и файлов, а среди них – сортировка от больших файлов к меньшим.


Рис. Содержимое каталога


Задание

– Введите следующие команды:

dir

dir c:\

dir /b c:\

– Обратите внимание на результаты выполнения команд

– Вызовите справку для команды dir

– Выведите на экран список файлов и каталогов диска D:, отсортированных по расширению в обратном алфавитном порядке;

– Выведите на экран список файлов и каталогов диска D:, отсортированных по дате – от ранних к поздним

– Выведите на экран список файлов и каталогов диска D:, сгруппировав каталоги после файлов

– Выведите на экран в алфавитном порядке имена скрытых файлов

– Выведите на экран в алфавитном порядке имена системных файлов

Команда CD

Для перехода из каталога в каталог используют команду cd. Это сокращение от английских слов Change Directory – «смените каталог».

Как и многие другие команды ОС, это выражение действительно звучит как команда в армии: «Рядовой Петров, смените каталог!»

Команда cd без параметров выводит имена текущего диска и папки.

Примеры использования команды:

cd c:\tmp – переход в каталог c:\tmp из любого каталога диска c:

cd /d c:\tmp – переход в каталог c:\tmp из любого каталога любого диска

cd tmp – переход в подкаталог tmp, расположенный в текущем каталоге

cd.. – переход на один уровень выше по дереву файлов

cd \ – переход в корневой каталог текущего диска

d: – переход на диск D:

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

В приглашении ОС каждый раз после выполнения любой команды выводится имя текущего диска и каталога – если не изменить настройки командной строки.


Задание

– Вызовите справку для команды cd

– Обратите внимание на использование кавычек в команде cd

– Используя команды cd и dir, переходите вверх и вниз по файловому дереву диска с:

– Сделайте зарисовку фрагмента файлового дерева

– Установите текущий диск d:

– Переходите вверх и вниз по файловому дереву диска d:

– Перейдите в каталог C:\Program Files с одновременной сменой диска и каталога

– Перейдите в корневой каталог

Команда TREE

Команда tree выводит на экран схематичное изображение дерева каталогов. Английское слово Tree означает «дерево», а также «забраться на дерево». В нашем случае это слово означает «вывести на экран схему дерева файловой системы».

Если не указаны диск или путь, на экран выводится часть дерева, начиная с текущего каталога.

Чтобы прервать вывод на экран, нажмите сочетание клавиш [Ctrl + C].

Примеры:

tree \ – вывод дерева каталогов всего диска C:

tree c:\ /f | more – постраничный вывод дерева диска C:


Задание

– Вызовите справку для команды tree

– Введите команду tree

– Введите команду tree и нажмите [Ctrl + C]

– Введите команду tree с постраничным выводом

– Сделайте зарисовку части дерева диска C:, начиная с корневого каталога

Команда SET

Команда set (англ. Set – «установите значение, задайте состояние, настройте») позволяет просматривать и изменять переменные (параметры) среды окружения (англ. Environment variables – «переменные окружения»). Имеется в виду среда выполнения программ.

Переменные окружения – это настройки ОС, доступные для прикладных программ в виде текстовых строк в оперативной памяти. Их также называют так: set-параметры.

К переменным окружения обращаются по имени.

Команда set без параметров выводит текущие значения переменных среды окружения, см. рис.


Вот некоторые примеры переменных окружения:

HOMEDRIVE – диск, на котором находится домашний каталог

HOMEPATH – путь к домашнему каталогу

NUMBER_OF_PROCESSORS – число логических процессоров, то есть процессоров, ядер и т. п.

OS – операционная система или семейство ОС

PATH – путь поиска исполняемых файлов

PROMPT – формат приглашения командной строки

USERNAME – имя пользователя


Рис. Параметры окружения


Для обращения к значению переменной окружения используют символ процента. Например, %os% – значение переменной os.

Примеры:

set path=C:\Temp;%path% – добавление каталога C:\Temp в путь поиска

echo %os% – вывод на экран значения переменной OS


Задание

– Выведите полный список переменных окружения

– Определите число «процессоров»

– Определите тип операционной системы

– Выясните в Википедии, что такое Windows NT

– Определите имя пользователя

– Выведите путь для поиска

– Добавьте каталог d:\ в путь для поиска

– Выведите путь для поиска

– Выведите полный список переменных окружения

– Убедитесь, что значение переменной path изменилось

Команда PATH

Команда path (англ. Path – «путь») устанавливает путь для поиска исполняемых файлов. Если при запуске приложения полный путь к файлу не указан, ОС пытается найти исполняемый файл в текущем каталоге, а затем просматривает пути к каталогам из заранее заданного списка path.

Список путей для поиска хранится в переменной среды окружения PATH. Для просмотра списка путей используется команда path без параметров.

Примеры:

path – выводит список путей

path c:\usr; d:\bin – задание двух путей для поиска

path %path%; d:\s – добавляет каталог d:\s к пути поиска

Изменение set-параметров из командной строки действует только для текущего командного окна. После изменения путей для поиска ОС не сможет выполнять некоторые команды. Для восстановления работоспособности закройте текущее командное окно и откройте новое.


Задание

– Выведите список путей поиска

– Добавьте каталог c:\1 в список путей

– Выведите список путей поиска

– Убедитесь, что каталог добавлен в список

Создание файлов

Обычно системный администратор ограничивает права рядового пользователя – чтобы тот не испортил работающую систему.

Например, пользователю могут запретить создание файлов в корневом каталоге диска c:\. Рекомендуется проводить опыты с файлами на другом диске в своём каталоге, например d:\sidorov.

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


Способ 1. Копирование ввода с клавиатуры в файл:

copy con file. txt

При выполнении этой команды данные с клавиатуры записываются в указанный файл. Для завершения ввода текста нажмите комбинацию [Ctrl + Z], а затем [Enter].

con (англ. Console – «Консоль») – устройство стандартного ввода-вывода информации. «Стандартный ввод» выполняется с клавиатуры, а «стандартный вывод» – на экран.


Способ 2. Перенаправление стандартного вывода:

echo текст> file. txt

Команда echo (англ. Echo – «эхо») выводит текст, напечатанный после команды, на экран.

Символ «больше» направляет вывод вместо экрана в файл. В результате, при выполнении этой команды будет создан файл file. txt, который будет содержать в себе текст, напечатанный после команды echo.


Задание

– Просмотрите в Википедии статью Консоль, которая относится к компьютерам

– Создайте на рабочем диске свой рабочий каталог и назовите его своей фамилией

– Перейдите в свой рабочий каталог

– Создайте текстовый файл a. txt с помощью копирования с консоли в файл.

– Создайте текстовый файл b. txt с помощью перенаправления стандартного вывода.

Вывод на экран

Команда type выводит на экран содержимое текстового файла (например, *.txt или *.bat), например:

type f. txt

Можно также выполнить копирование файла на экран (устройство стандартного вывода, консоль), например

copy f. txt con


Задание

– Выведите на экран файл a. txt командой type

– Выведите на экран файл b. txt командой copy

Команда COPY

Команда copy (англ. copy – «скопируйте, создайте копию») используется, чтобы скопировать один или несколько файлов. Первый параметр команды – исходный файл (источник). Второй параметр – результат копирования (каталог или новый файл). Например, команда copy f1.txt d:\t копирует файл f1.txt в каталог d:\t.

Для объединения нескольких файлов в один файл между именами файлов ставится знак +. Например команда

copy f1+f2+f3 f4

объединяет файлы f1, f2 и f3 в файл f4

Второй параметр команды может содержать имя файла или путь к файлу.

Примеры:

copy 1.txt 2.txt – копирование файла 1.txt в файл 2.txt в текущем каталоге. Если файл с именем 2.txt уже существует в этом каталоге, то его содержимое заменяется содержимым файла 1.txt. Перед копированием ОС запрашивает согласие пользователя на замену существующего файла.

copy 1.txt d:\t\2.txt – копирование файла 1.txt в файл 2.txt в каталоге d:\t

Звездочка * заменяет любой символ или несколько символов в названии файла. Например, команда copy *.txt d:\ копирует все файлы с расширением txt в каталог d:\.


Задания

– Скопируйте файл a. txt в каталог d:\

– Выведите на экран файл d:\a. txt

– Скопируйте файл a. txt в d:\z. txt

– Выведите на экран файл d:\z. txt

– Скопируйте файл b. txt в файл c. txt

– Выведите на экран файл c. txt

– Скопируйте файл a. txt в файл c. txt

– Выведите на экран файл c. txt

– Скопируйте файлы a. txt и b. txt в файл c. txt

– Выведите на экран файл c. txt

– Скопируйте все файлы типа txt в файл d. txt

– Выведите на экран файл d. txt

Работа с архивами

Архив – это файл, внутри которого упакованы каталоги и файлы. Архиватор – это программа, которая выполняет упаковку и распаковку архивов. Многотомный архив – это большой архив, разбитый на несколько частей. Такие архивы можно записать на несколько дисков или отправить частями по сети.

Самораспаковывающийся архив SFX (SelF-eXtracting archive) – это исполняемый файл *.exe, содержащий архив и программу распаковки. При запуске такого файла производится распаковка архива без использования дополнительной программы-архиватора.

В лабораторной работе используется программа 7-zip – свободно распространяемый архиватор.

Сайт программы:

https://www.7-zip.org/


Чтобы запускать архиватор из командной строки, необходимо добавить в путь поиска каталог C:\Program Files\7-Zip

При вызове архиватора ему передают команду – первую букву английского слова, например

add

list

extract


Примеры использования архиватора:

7z a x1 b. txt – упаковка файла b. txt в архив x1.7z

7z l 1.7z – вывод списка файлов из архива 1.7z

7z e 1.7z – извлечение файлов из архива 1.7z

7z e 1.7z -od:\ – извлечение файлов в каталог d:\

7z a -sfx rr *.txt – сжатие всех текстовых файлов в самораспаковывающйся архив rr. exe

В описании архиватора используются следующие обозначения. В квадратных скобках даются необязательные параметры. Угловые скобки служат для обозначения параметров. При вводе команды квадратные и угловые скобки не используют. Например, следующее описание

7z [ …] [ …]

означает, что пользователь может вводить такие команды:

7z a ghjk

7z l ghjk

7z a ghjk a. txt

7z a —sfx ghjk b.doc b. txt


Задания

– Выясните, в каком каталоге находится архиватор 7-zip

– Выведите на экран путь поиска

– Добавьте путь для поиска архиватора

set path=%path%;C:\Program Files\7-Zip

– Выведите на экран путь поиска

– Убедитесь, что путь добавлен

– Введите команду 7z и прочитайте справку по использованию архиватора

– Выясните назначение и перевод команд a, e, l

– Упакуйте файл с. txt в архив сс.7z

– Сравните размеры исходного и сжатого файлов

– Создайте текстовый файл tt.docx в редакторе MS Word

– Упакуйте файл tt.docx в архив t1.7z

– Сравните размеры исходного и сжатого файлов

– Упакуйте все файлы с расширением *.txt в архив ttt.7z

– Выведите список файлов из архива ttt.7z

– Распакуйте архив ttt.7z в каталог d:\

– Убедитесь, что операция выполнена успешно

– Упакуйте файл tt.doc в саморапаковывающийся архив в каталоге d:\

– Сравните размеры исходного и сжатого файлов

– Перейдите в каталог d:\

– Запустите созданный архивный файл на выполнение

– Убедитесь, что операция выполнена успешно

Перенаправление ввода-вывода

При выполнении программ в командной строке используется так называемый стандартный ввод-вывод. Это стандартные встроенные функции ОС для ввода текста с клавиатуры и вывода текста на экран. Такие действия выполняются, например, при использовании команд printf и scanf в программе на языке C.

Для перенаправления стандартного ввода-вывода используют следующие символы:

> – записать в файл (вместо вывода на экран);

>> – добавить к файлу (вместо вывода на экран);

<– прочитать из файла (вместо ввода с клавиатуры);

| – объединить две команды в конвейер (вместо вывода на экран и ввода с клавиатуры).

Стандартный ввод

Если в параметрах командной строки не указано имя файла, то команда принимает данные с клавиатуры. Например, команда sort сортирует текстовые строки по алфавиту. Команда sort без параметров сортирует текст, вводимый с клавиатуры до нажатия [Ctrl+Z] и [Enter]. Команда sort f. txt сортирует текст из файла f. txt. Команда dir> f. txt отправляет список файлов в файл f. txt вместо вывода на экран. Команда dir>> f. txt дописывает список файлов в конец файла f. txt, если этот файл уже существует.

Конвейер

При организации конвейера стандартный вывод первой команды (вместо вывода на экран) направляется на стандартный ввод второй команды (вместо чтения с клавиатуры). Например, конвейер dir | sort создает список файлов, сортирует его и выводит на экран.

Команда more организует постраничный вывод на экран. При организации конвейера в виде tree | more, команда more перехватывает вывод на экран результатов работы команды tree и выводит длинный текст по страницам. При работе с командой more для вывода на экран следующей строки нажимают [Enter], для вывода следующей страницы – пробел [Space], для выхода из страничного просмотра – клавишу [Q] (англ. Quit – «выйти»).


Задания

– Вызовите команду dir и запишите результаты в файл d4.txt

– Выведите файл d4.txt на экран

– Вызовите команду ver и добавьте результаты к файлу d4.txt

– Выведите файл d4.txt на экран

– Выведите файловое дерево в постраничном режиме

Пакетные файлы

Пакетный файл – это текстовый файл с расширением *.bat (англ. Batch – «пакет»). В пакетном файле записывают последовательность команд ОС. Имеется также возможность составления несложных программ.

Хотя пакетный файл содержит текст, он является исполняемым файлом. Чтобы запустить пакетный файл из командной строки, нужно ввести его имя и нажать [Enter]. При этом расширение указывать не обязательно.

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

start dir


Задание

– Выведите справку по команде date

– Командой echo создайте пакетный файл da.bat, в котором содержится команда вывода на экран текущей даты

– Запустите файл da.bat на выполнение, указав расширение

– Запустите файл da.bat на выполнение, не указав расширение

– Запустите файл da.bat на выполнение в отдельном окне

– Перейдите в корневой каталог диска D:

– Запустите на исполнение файл da.bat без указания пути

– Ознакомьтесь с сообщением ОС

– Добавьте к пути поиска полный путь к каталогу, где находится файл da.bat

– Убедитесь, что путь поиска изменен

– Запустите на исполнение файл da.bat без указания пути

– Убедитесь, что файл успешно запущен

Работа с файлами и каталогами

Для создания каталогов используется команда mkdir (англ. Make Directory – «Создайте каталог»).

Для удаления каталогов используется команда rmdir (англ. Remove Directory – «Удалите каталог»).

Для удаления фалов используется команда del (англ. Delete – «Удалите»).


Задания

– Вызовите справку по mkdir

– Создайте каталог (в названии используйте номер группы)

– Перейдите в новый каталог

– Создайте каталог (в названии используйте фамилию)

– Перейдите в новый каталог

– Создайте текстовый файл

– Вызовите справку по del

– Удалите текстовый файл

– Поднимитесь на один уровень вверх по файловому дереву

– Вызовите справку по rmdir

– Удалите каталог

– Создайте каталог

– Поднимитесь на один уровень вверх по файловому дереву

– Удалите каталог

Управление процессами

Процесс – это программа, которая выполняется на компьютере. Пока программа хранится на диске, это файл. Когда она запущена на выполнение, это процесс. Процессы находятся в оперативной памяти, а не на диске.

Для вывода списка процессов используется команда tasklist (англ. Task List – «Составьте список задач (процессов)»).

Для остановки выполнения процесса используется команда taskkill (англ. Task Kill – «Убейте задачу, остановите выполнение указанного процесса»).

Для остановки процесса требуется указать идентификатор процесса PID (англ. Process Identifier – «Идентификатор процесса»). PID – это «уникальное» целое число, назначенное каждому процессу. У всех процессов эти номера разные.


Задание

– Выведите на экран список процессов

– Определите, какой процесс занимает больше всего памяти

– Определите номер процесса cmd. exe

– Запустите второе командное окно

– Выведите список процессов

– Определите номер второго процесса cmd. exe

– Определите, сколько памяти занимает каждый процесс cmd. exe

Загрузка...