Добавить в цитаты Настройки чтения

Страница 145 из 180



shell=d: doscommand.com d: dos /е:1024

Эта команда устанавливает переменную операционной среды COMSPEC в C: DOSCOMMAND.COM. Для данного командного интерпретатора она задает размер среды в 1024 байта.

Примечание:

Если Вам важно обеспечить больший размер окружения для сеансов DOS в Windows, не расходуя обычную память, то можете включить в раздел [NonWindowsApp] файла SYSTEM.INI строку вида:

CommandE nvSizе=512

Тем самым для сеанса DOS будет установлено 512-байтное окружение.

Команда COPY

Копирует в заданное место один или более файлов. Данную команду можно также использовать для комбинирования файлов. При копировании более одного файла MS-DOS выводит на экран имя каждого копируемого файла.

COPY [/Y /-Y][/А /В] источник [/А /В] [+ источник

[/А /В] [+…]] [приемник [/А /В]] [/V]

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

Параметр /Y указывает, что вы хотите использовать команду COPY для замены существующих файлов без запроса на подтверждение. По умолчанию, если в качестве целевого файла задается существующий файл, COPY будет запрашивать, хотите ли вы затереть существующий файл (в предыдущих версиях MS-DOS это происходило без запроса). При использовании команды COPY в командных файлах она будет вести себя как в предыдущих версиях. Указание данного параметра переопределяет все назначения по умолчанию и текущую установку переменной операционной среды COPYCMD.

Параметр /-Y показывает, что вы хотите, чтобы команда COPY при замене существующего файла выводила запрос на подтверждение. Указание данного параметра переопределяет все назначения по умолчанию и текущую установку переменной операционной среды COPYCMD.

Параметр /А указывает текстовый файл ASCII. В файле ASCII для указания конца файла можно использовать символ конца файла (CTRL+Z). При комбинировании файлов COPY по умолчанию интерпретирует текстовые файлы как файлы ASCII. Когда /А предшествует списку имен файлов в командной строке, он применяется ко всем файлам, имена которые следуют за /А, пока COPY не обнаруживает параметр /В (в этом случае /В применяется ко всем файлам, имена которых предшествуют параметру /В). Когда параметр /А следует за именем файла, он применяется ко всем файлам, имена которых предшествуют параметру /А, и ко всем файлам, имена которых следуют за /А, пока COPY не обнаруживает параметр /В (в этом случае /В применяется ко всем файлам, имена которых предшествуют параметру /В).

Параметр /В указывает двоичный файл. Он задает, что интерпретатор команд должен считывать число байт, заданных размером файла в каталоге. Параметр /В — используется по умолчанию (если COPY не применяется для комбинирования файлов). Когда /В предшествует списку имен файлов в командной строке, он применяется ко всем файлам, имена которых следуют за /В, пока COPY не обнаруживает параметр /А (в этом случае /А применяется ко всем файлам, имена которых предшествуют параметру /А). Когда параметр /В следует за именем файла, он применяется ко всем файлам, имена которых предшествуют параметру /В, и ко всем файлам, имена которых следуют за /В, пока COPY не обнаруживает параметр /А (в этом случае /А применяется ко всем файлам, имена которых предшествуют параметру /А).

/V проверяет корректность записи новых файлов. О копировании каталогов и подкаталогов подробнее рассказывается в описании команды XCOPY.

Установка переменной операционной среды COPYCMD

Чтобы определить вывод в командах COPY, MOVE и XCOPY запроса на подтверждение при перезаписи файла при указании их в командной строке или в командной файле, можно использовать переменную операционной среды COPYCMD.

Чтобы команды COPY, MOVE и XCOPY во всех случаях выводили запрос, установите в переменной операционной среды COPYCMD /-Y. Чтобы эти команды затирали файлы без запроса, установите переменную COPYCMD в /Y.

Указание любой из этих команд с параметром /Y или /-Y переключает значения по умолчанию и установку переменной операционной среды COPYCMD.



Копирование на устройства и с устройств

В источнике или приемнике вы можете указывать имя устройства. При копировании на устройство используйте параметр /В. Когда приемником является устройство (например, СOМ1 или LPT2), параметр /В приводит к тому, что MS-DOS копирует данные на устройство в двоичном режиме, в котором все символы, включая специальные (такие как CTRL+C, CTRL+S, CTRL+Z, и возврат каретки) копируются на устройство как данные. Отсутствие /В вызывает копирование данных на устройство в режиме ASCII. При этом перечисленные выше специальные символы вызывают при копировании специальные действия.

Если вы не задаете целевого файла, то MS-DOS создает копию с тем же именем, датой и временем создания, что и исходный файл, помещая новую копию в текущий каталог на текущем диске. Если исходный файл находится на текущем диске и в текущем каталоге, а целевой диск и файл не задаются, то команда COPY останавливается, и MS-DOS выводит сообщение:

File ca

0 File(s) copied

(Файл невозможно скопировать сам в себя, скопировано 0 файлов.)

Если MS-DOS не может проверить операцию записи, то она выводит сообщение об ошибке. Кроме того, параметр /V замедляет выполнение команды, поскольку MS-DOS должна проверять каждый записываемый на диск сектор.

Если MS-DOS не может проверить корректность операции записи, то на экран выводится сообщение об ошибке. Хотя при работе с командой COPY ошибки происходят редко, параметр /V позволяет вам проверить корректность записи важных данных. Однако этот параметр замедляет выполнение команды COPY поскольку MS-DOS должна проверить каждый записываемый на диск сектор.

Действие параметров /А или /В зависит от позиции в командной строке. Если они следуют за именем исходного файла, то COPY работает следующим образом. /А приводит к интерпретации файла как файла ASCII (текстовый файл) и копированию данных, предшествующих первому символу конца файла. COPY не копирует символ конца файла и остаток файла. Параметр /В приводит к копированию всего файла, включая символ конца файла.

Когда параметр /А или /В следует за именем целевого файла, COPY выполняет следующие действия. При задании /А в качестве последнего символа файла добавляется символ конца файла. Если указано /В, то символ конца файла не добавляется.

Если вы задаете более одного исходного файла, разделяя их символом +, то COPY комбинирует файлы, создавая один новый файл. При использовании в качестве исходных файлов трафаретных символов и задании в качестве целевого файла единственного имени, COPY комбинирует все файлы, имена которых соответствуют трафарету источника, и создает один файл с именем, заданным в качестве имени файла-приемника.

В любом случае COPY при отсутствии параметра /В предлагает комбинированный список файлов ASCII (не комбинируйте нетекстовые файлы без параметра /В, поскольку это может привести к их усечению).

Если имя целевого файла совпадает с именем одного из копируемых файлов (кроме первого), то исходное содержимое целевого файла теряется. При этом COPY выводит следующее сообщение:

Content of destination lost before copy

(Перед копированием содержимое приемника теряется)

Если вы хотите присвоить файлу текущие дату и время, не модифицируя его, то задайте команду в следующем формате (запятые указывают на пропуск параметра приемника):

сору /Ь source+,

где source — исходный файл. Чтобы скопировать все файлы в подкаталогах, следует использовать команду XCOPY.