-
Notifications
You must be signed in to change notification settings - Fork 2
Лабораторная работа 1
Физический диск - отдельное устройство для долговременного хранения данных. Большинство устройств делится на физические единицы - сектора (блоки размером 512 байт). Для упрощения адресации сектора могут объединяться в кластеры, например, по 8 секторов (4 КБ).
Логический диск - концепция организации пространства на физическом диске в ОС DOS, Windows. Обозначаются буквами латинского алфавита. Со времён эпохи дискет и MS-DOS принято, что A: - дисковод 5,25”, B: - дисковод 3,5”, C: - системный логический диск (раздел жёсткого диска, содержащий операционную систему), далее - произвольно. В Windows буквы дисков можно переназначать с помощью системной программы “Управление дисками” (доступна через контекстное меню кнопки Пуск или значка “Мой компьютер” при наличии прав администратора).
Файл - поименованное место на диске. Содержимое файла располагается в кластерах логических дисков (не обязательно последовательно) так, что один кластер может принадлежать только одному файлу. Например, при размере кластеров на диске 4096 байт и размере файла 10 байт он займёт 1 кластер, при размере 4097 байт - 2 кластера, и т. д.
Каталог - файл специального типа, содержимым которого является список файлов и других каталогов, вложенных в него.
Именование файлов. В ОС DOS и Windows имена файлов являются регистронезависимыми, то есть abc и ABC - считается одним и тем же именем. При этом в Windows имя хранится в заданном при создании файла регистре, а в DOS - переводится в заглавные буквы. Длина имени DOS ограничена 11 символами: 8 - имя и 3 - расширение. Более длинные имена для совместимости обрезаются до 8 символов либо, если сокращённое имя уже занято, - до меньшего количества, а хвостовые символы заменяются на ~ и уникальное число (1, 2, 3 и т. д.)
Файловая система — способ организации, хранения и именования данных на диске (в первую очередь - распределения файлов по кластерам).
Главный “файл” любого логического диска - корневой каталог. Расположен по фиксированному адресу и не может быть удалён. Все прочие файлы и каталоги могут быть удалены, переименованы, перемещены. Любой файл или каталог идентифицируется путём к нему.
Текущий каталог - путь к каталогу, который является “рабочим” в настоящий момент. С каждой запущенной программой связан свой текущий каталог.
Текущий диск - логический диск, на котором расположен текущий каталог.
Путь к файлу может быть относительным - считается от текущего каталога и начинается с любого символа, кроме \, и абсолютным. Разделителем каталогов в пути служит символ \.
- Буква тома или диска, после которой следует разделитель томов (:).
- Имя каталога. Символ разделителя каталогов служит для разделения подкаталогов во внутренней иерархии каталога.
- Необязательное имя файла. Символ разделителя каталогов служит для разделения пути к файлу и его имени.
Если присутствуют все три компонента, путь является абсолютным. Если буква тома или диска не указана и имя каталога начинается с символа разделителя каталогов, такой путь задан относительно корня текущего диска. В противном случае путь задан относительно текущего каталога. (https://docs.microsoft.com/ru-ru/dotnet/standard/io/file-path-formats)
Оболочка операционной системы - интерпретатор команд операционной системы, обеспечивающий интерфейс для взаимодействия пользователя с функциями системы. Командный интерпретатор, интерпретатор командной строки — программа, являющаяся частью операционной системы, обеспечивающая базовые возможности управления компьютером посредством интерактивного ввода команд через интерфейс командной строки или последовательного исполнения пакетных командных файлов. В MS-DOS и старых версиях Windows интерпретатор - COMMAND.COM, в семействе Windows NT (NT, 2000, XP и далее) - cmd.exe.
Основные возможности интерпретатора командной строки - просмотр каталогов, операции манипулирования файлами, запуск программ.
Команды интерпретатора делятся на внутренние и внешние. Внутренние распознаются и выполняются непосредственно самим командным интерпретатором. Внешние команды являются отдельными программами - исполняемыми файлами.
Первое и обязательное слово при вызове команды - это её имя. Далее могут идти ключи, начинаются со знака /
. Далее - параметры. Практически у любой команды доступен ключ /?
, позволяющий получить справку по её назначению и способам вызова.
С каждой программой при запуске связываются так называемые стандартные потоки ввода-вывода. По умолчанию стандартный поток ввода - данные, поступающие с клавиатуры, а стандартный поток вывода - монитор (в современных системах - окно командного интерпретатора). DOS и Windows позволяют перенаправить поток вывода в файл с помощью символа >
.
Таким образом, в терминале доступна возможность создания файла с клавиатуры. Для этого используется команда копирования файлов copy
, но первым параметром вместо имени файла указывается имя устройства клавиатуры con
.
Эта команда будет осуществлять запись в указанный файл всех вводимых символов до завершения ввода с помощью комбинации Ctrl+Z
.
Кроме команд самой оболочки, интерпретатор командной строки позволяет запустить любую программу, доступную в системе. Можно указать путь к программе, но также можно запустить программу без указания пути, если её местоположение хранится в системной переменной PATH.
Вывод справочных сведений о командах Windows.
HELP [<команда>]
Вывод сообщений и переключение режима отображения команд на экране.
ECHO [ON | OFF]
ECHO [message]
Введите ECHO без параметров для отображения текущего значения этой команды.
Очищает содержимое экрана.
Завершает программу CMD.EXE (интерпретатор команд) или текущий пакетный файл-сценарий.
Вывод списка файлов и подкаталогов в указанном каталоге.
DIR [drive:][path][filename]
Выводит имя или изменяет текущий каталог.
CHDIR [/D] [диск:][путь]
CHDIR [..]
CD [/D] [диск:][путь]
CD [..] ; ".." обозначает переход в родительский каталог.
Копирование одного или нескольких файлов в другое место.
COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B] источник [/A | /B] [+ источник [/A | /B] [+ ...]] [результат [/A | /B]]
; Пример:
copy file1.txt file2.txt ; копировать файл file1.txt в файл file2.txt в текущем каталоге
Перемещение файлов и переименование файлов и папок
; Перемещение одного или более файлов:
MOVE [/Y | /-Y] [диск:][путь]имя_файла1[,...] назначение
; Переименование папки:
MOVE [/Y | /-Y] [диск:][путь]имя_папки новое_имя_папки
Переименование одного или нескольких файлов.
RENAME [диск:][путь]имя_файла1 имя_файла2.
REN [диск:][путь]имя_файла1 имя_файла2.
Обратите внимание, что для конечного файла невозможно указать другой диск или путь.
Удаление одного или нескольких файлов.
DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
Создание каталога.
MKDIR [диск:]путь
MD [диск:]путь
Удаление каталога.
RMDIR [/S] [/Q] [диск:]путь
RD [/S] [/Q] [диск:]путь
Последовательный вывод данных по частям размером в один экран.
MORE [/E [/C] [/P] [/S] [/Tn] [+n]] < [диск:][путь]имя_файла
имя_команды | MORE [/E [/C] [/P] [/S] [/Tn] [+n]]
MORE /E [/C] [/P] [/S] [/Tn] [+n] [файлы]
Вывод или задание пути поиска исполняемых файлов.
PATH [[диск:]путь[;...][;%PATH%]
PATH ; - очищает путь поиска используемых файлов, ограничив его текущим каталогом.
Команда PATH
без параметров отображает текущий путь поиска.
Вывод содержимого одного или нескольких текстовых файлов.
TYPE [диск:][путь]имя_файла
Изменение командной строки cmd.exe.
PROMPT [text]
Командная строка может включать обычные символы и следующие специальные коды:
-
$A
- & (амперсанд) -
$B
- | (вертикальная черта) -
$C
- ( (левая круглая скобка) -
$D
- Текущая дата -
$E
- Символ ASCII с кодом 27 -
$F
- ) (правая круглая скобка) -
$G
- > (знак "больше") -
$H
- BACKSPACE (удаление предыдущего символа) -
$L
- < (знак "меньше") -
$N
- Текущий диск -
$P
- Текущие диск и путь -
$Q
- = (знак равенства) -
$S
- (пробел) -
$T
- Текущее время -
$V
- Номер версии Windows -
$_
- Возврат каретки и перевод строки -
$$
- $ (символ доллара)
Вывод, задание и удаление переменных среды cmd.exe.
SET [переменная=[строка]]
; переменная - имя переменной среды.
; строка - строка символов, присваиваемая указанной переменной.
Введите SET без параметров для вывода текущих переменных среды.
Сравнение двух файлов или двух наборов файлов и вывод различий между ними.
FC [/A] [/C] [/L] [/LBn] [/N] [/OFF[LINE]] [/T] [/U] [/W] [/nnnn][диск1:][путь1]имя_файла1 [диск2:][путь2]имя_файла2
FC /B [диск1:][путь1]имя_файла1 [диск2:][путь2]имя_файла2
Поиск текстовой строки в одном или нескольких файлах.
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "строка" [[диск:][путь]имя_файла[ ...]]
Если путь не задан, команда FIND
выполняет поиск в тексте консоли либо в тексте, переданном по конвейеру другой командой.
Изменение заголовка окна командной строки.
TITLE [строка]
Вывод версии Windows.