Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

3.10.2. Команда cp - сделать копию файла

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

Чтобы скопировать файл outline в файл new.outline в справочнике draft, введите команду: cp outline new.outline. Когда система скопирует файл, то вернет подсказку. Чтобы проверить существование нового файла, введите команду:

	ls<CR>

Эта команда перечислит имена всех файлов и справочников в текущем справочнике (в данном случае в справочнике draft). Экран будет выглядеть следующим образом:

	$ cp outline new.outline<CR>
	$ ls<CR>
	new.outline
	outline
	table
	$

Система UNIX не позволяет иметь в одном справочнике два файла с одним именем. Если бы файл new.outline уже существовал в этом справочнике, то он был бы заменен на копию файла outline, предыдущая версия файла new.outline будет удалена.

Если вы попытаетесь скопировать файл outline в другой файл с тем же именем в том же справочнике, то система сообщит вам, что имена файлов идентичны и возвратит вам подсказку.

Если вы затем проверите содержание справочника, чтобы определить сколько копий файла outline существует, то вы получите следующий экран:

	$ cp outline new.outline<CR>
	cp: outline and outline are identical
	$ ls<CR>
	outline
	table
	$

Система UNIX разрешает иметь файлы с одинаковыми именами в разных справочниках. Например, вы можете скопировать файл outline из справочника draft в файл outline в справочнике letters. Если вы находитесь в справочнике draft, то сможете воспользоваться одной из перечисленных ниже 4-х командных строк. В первых двух строках вы указываете имя нового файла при выполнении копирования.

	cp outline /home/startship/letters/outline<CR>
	(указано полное имя пути)
	cp outline ../letters/outline<CR>
	(указано родственное имя пути)

Однако система UNIX не требует, чтобы указывали новое имя файла. Если вы не укажите имя нового файла в командной строке, то cp даст новому файлу то же имя, которое имеет оригинальный файл. В этом случае можете задать команду в одном из следующих видов:

	cp outline /home/startship/letters<CR>
	(указано полное имя пути)
	cp outline ../letters<CR>
	(указано родственное имя пути)

Если вы хотите дать другое имя новому файлу, то обязательно укажите это имя. Например, чтобы скопировать файл outline (справочник draft) в файл с именем outlin.vers2 в справочник letters, нужно задать одну из сдедующих команд:

	cp outline /home/startship/letters/outlin.vers2<CR>
	(указано полное имя пути)
	cp outline ../letters/outlin.vers2<CR>
	(указано родственное имя пути)

Синтаксис команды:

	cp ключи имя-файла1 имя-файла2<CR>
	cp ключи имя-файла(ов) справочник<CR>