АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

cpposix - Интернет в облаке

Запустите cpposix в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда cpposix, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


cp - копировать файлы

СИНТАКСИС


cp [−Пфип] исходный файл целевой_файл

cp [−Пфип] исходный файл... цель

cp -R [−H | −L | −P] [−фип] исходный файл... цель

ОПИСАНИЕ


Первая форма синопсиса обозначается двумя операндами, ни один из которых не является существующими файлами
введите каталог. В cp утилита копирует содержимое исходный файл (или если исходный файл
это файл типа символьная ссылка, содержимое файла, на которое ссылается исходный файл), Чтобы
путь назначения, названный целевой_файл.

Вторая форма синопсиса обозначается двумя или более операндами, где −R вариант нет
указана, и первая форма синопсиса не применима. Это будет ошибкой, если таковая имеется.
исходный файл это файл типа каталог, если цель не существует, или если цель не
назовите каталог. В cp утилита копирует содержимое каждого исходный файл (или если
исходный файл это файл типа символьная ссылка, содержимое файла, на которое ссылается
исходный файл) к пути назначения, названному конкатенацией цель, один
характер, если цель не закончился , а последний компонент
исходный файл.

Третья форма синопсиса обозначается двумя или более операндами, где −R опция
указано. В cp утилита должна копировать каждый файл в файловой иерархии с корнем в каждом
исходный файл к пути назначения, названному следующим образом:

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

* Если цель не существует и указаны два операнда, имя соответствующего
путь назначения для исходный файл должен быть цель; название соответствующего
путь назначения для всех других файлов в файловой иерархии должен быть конкатенацией
of цель, а символ и путь к файлу относительно исходный файл.

Будет ошибкой, если цель не существует и указано более двух операндов, или
if цель существует и не называет каталог.

В следующем описании термин целевой_файл относится к файлу, названному
путь назначения. Срок исходный файл относится к копируемому файлу, независимо от того,
заданный как операнд или файл в файловой иерархии с корнем исходный файл операнд. Если
исходный файл это файл типа символьной ссылки:

* Если −R вариант не указан, cp предпринимает действия в зависимости от типа и
содержимое файла, на который ссылается символическая ссылка, а не символическая ссылка
сам, если −P вариант был указан.

* Если −R была указана опция:

- Если ни один из вариантов -H, −L, ни −P были указаны, не уточняется, какой из
-H, −Lили −P будет использоваться по умолчанию.

- Если -H опция была указана, cp предпринимает действия в зависимости от типа и
содержимое файла, на который ссылается любая символическая ссылка, указанная как исходный файл
операнд.

- Если −L опция была указана, cp предпринимает действия в зависимости от типа и
содержимое файла, на который ссылается любая символическая ссылка, указанная как исходный файл
операнд или любые символические ссылки, обнаруженные во время обхода файловой иерархии.

- Если −P опция была указана, cp копирует любую символическую ссылку, указанную как
исходный файл операнд и любые символические ссылки, обнаруженные во время обхода файла
иерархия и не должны следовать никаким символическим ссылкам.

Для каждого исходный файл, необходимо предпринять следующие шаги:

1. Если исходный файл ссылается на тот же файл, что и целевой_файл, cp может написать диагностику
сообщение к стандартной ошибке; он не будет больше ничего делать с исходный файл и пойдем дальше
к любым оставшимся файлам.

2. Если исходный файл относится к типу каталога, необходимо предпринять следующие шаги:

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

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

c. Если целевой_файл существует, и это тип файла, не указанный в системных интерфейсах
том POSIX.1-2008, поведение определяется реализацией.

d. Если целевой_файл существует и не относится к типу каталога, cp напишу диагностику
сообщение к стандартной ошибке, больше ничего не делайте с исходный файл или любые файлы ниже
исходный файл в файловой иерархии и перейдите к любым оставшимся файлам.

е. Если каталог целевой_файл не существует, он должен быть создан с помощью файла
биты разрешения установлены на то же значение, что и биты исходный файл, измененный
маска создания файла пользователя, если -p вариант не был указан, а затем
побитовое ИЛИ с S_IRWXU. Если целевой_файл не может быть создано, cp должен
написать диагностическое сообщение о стандартной ошибке, больше ничего не делать с исходный файл,
и перейдите к любым оставшимся файлам. Не указано, если cp попытки скопировать файлы
в файловой иерархии, основанной на исходный файл.

f. Файлы в каталоге исходный файл копируется в каталог целевой_файл,
выполнив четыре шага (с 1 по 4), перечисленные здесь, с файлами как исходный файлs.

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

час В cp утилита не должна больше ничего делать с исходный файл и переходите к оставшимся
файлы.

3. Если исходный файл относится к типу обычного файла, необходимо предпринять следующие шаги:

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

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

II. Файловый дескриптор для целевой_файл получается путем совершения действий
эквивалентно открытый() функция, определенная в томе Системные интерфейсы
POSIX.1-2008 вызывается с использованием целевой_файл как путь аргумент, а побитовое-
включая OR O_WRONLY и O_TRUNC как офлаг аргумент.

iii. Если попытка получить дескриптор файла не удалась и -f вариант в
эффект, cp попытается удалить файл, выполнив эквивалентные действия
до разъединить() функция, определенная в томе Системные интерфейсы
POSIX.1-2008 вызывается с использованием целевой_файл как путь аргумент. Если эта попытка
преуспевает, cp продолжу с шага 3b.

б. Если целевой_файл не существует, дескриптор файла должен быть получен путем выполнения
действия, эквивалентные открытый() функция, определенная в томе Системные интерфейсы
из POSIX.1-2008 вызывается с использованием целевой_файл как путь аргумент, а побитовое-
включая OR O_WRONLY и O_CREAT как офлаг аргумент. Разрешение файла
кусочки исходный файл должен быть Режим аргумент.

c. Если попытка получить дескриптор файла не удалась, cp напишу диагностику
сообщение к стандартной ошибке, больше ничего не делайте с исходный файл, и переходите к любому
остальные файлы.

d. Содержание исходный файл должен быть записан в файловый дескриптор. Любая запись
ошибки вызывают cp написать диагностическое сообщение для стандартной ошибки и продолжить
к шагу 3e.

е. Файловый дескриптор должен быть закрыт.

f. В cp утилита не должна больше ничего делать с исходный файл. Если произошла ошибка записи
на шаге 3d не указано, если cp продолжается с любыми оставшимися файлами. Если нет
ошибка записи произошла на шаге 3d, cp перейдет к любым оставшимся файлам.

4. В противном случае −R была указана опция, и необходимо предпринять следующие шаги:

а. В целевой_файл должен быть создан с тем же типом файла, что и исходный файл.

б. Если исходный файл является файлом типа FIFO, биты разрешения файла должны быть одинаковыми
как у исходный файл, модифицируется маской создания файла пользователя, если -p
вариант не указан. В противном случае разрешения, идентификатор владельца и идентификатор группы
целевой_файл определяются реализацией.

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

c. Если исходный файл - это файл с символической ссылкой, а параметры требуют наличия
символическая ссылка, на которую нужно воздействовать, путь, содержащийся в целевой_файл должен
быть таким же, как имя пути, содержащееся в исходный файл.

Если это не удается по какой-либо причине, cp должен написать диагностическое сообщение в стандартный
ошибка, больше ничего не делать с исходный файл, и перейдите к любым оставшимся файлам.

Если реализация предоставляет дополнительные или альтернативные механизмы контроля доступа (см.
Объем базовых определений POSIX.1-2008, Раздел 4.4, Файл О компании Разрешения...), их
влияние на копии файлов определяется реализацией.

ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


Ассоциация cp утилита должна соответствовать тому Базовые определения POSIX.1-2008, Раздел 12.2,
утилита Синтаксис Инструкции.

Поддерживаются следующие варианты:

-f Если файловый дескриптор для файла назначения не может быть получен, как описано в
шаг 3.a.ii., попробуйте разорвать связь с файлом назначения и продолжить.

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

−я Напишите запрос стандартной ошибки перед копированием в любой существующий не каталог
файл назначения. Если ответ от стандартного ввода положительный,
копия будет предпринята попытка; в противном случае этого не произойдет.

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

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

-p Дублируйте следующие характеристики каждого исходного файла в соответствующем
целевой файл:

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

2. ID пользователя и ID группы. Если это дублирование не удается по какой-либо причине, оно
не указано, есть ли cp записывает диагностическое сообщение в стандартную ошибку.

3. Биты разрешения файла и биты S_ISUID и S_ISGID. Другой,
биты, определенные реализацией, также могут дублироваться. Если это дублирование
не работает по любой причине, cp должен написать диагностическое сообщение для стандартной ошибки.

Если ID пользователя или ID группы не могут быть продублированы, биты прав доступа к файлу
S_ISUID и S_ISGID должны быть очищены. Если эти биты присутствуют в источнике
файла, но не дублируются в конечном файле, не указано, были ли
cp записывает диагностическое сообщение в стандартную ошибку.

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

−R Скопируйте файловые иерархии.

Указание нескольких взаимоисключающих опций -H, −Lкачества −P не будет
считается ошибкой. Последняя указанная опция должна определять поведение
утилита.

ОПЕРАНДЫ


Поддерживаются следующие операнды:

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

целевой_файл
Путь к существующему или несуществующему файлу, используемый для вывода, когда один
файл скопирован. Если целевой_файл операнд '-', он должен ссылаться на файл с именем
-; реализации не должны рассматривать его как стандартный вывод.

цель Путь к каталогу, в котором будут храниться скопированные файлы.

СТАНДИН


Стандартный ввод должен использоваться для чтения строки ввода в ответ на каждую подсказку.
указанный в разделе STDERR. В противном случае стандартный ввод не будет использоваться.

ВХОД FILES


Входные файлы, указанные как операнды, могут быть любого типа.

ОКРУЖАЮЩАЯ СРЕДА ПЕРЕМЕННЫЕ


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

ДЛИННЫЙ Задайте значение по умолчанию для переменных интернационализации, которые не установлены или
нулевой. (См. Том Базовых определений POSIX.1-2008, Раздел 8.2,
Интернационализация Переменные за приоритет интернационализации
переменные, используемые для определения значений категорий локали.)

LC_ALL Если установлено непустое строковое значение, переопределить значения всех остальных
переменные интернационализации.

LC_COLLATE
Определите локаль для поведения диапазонов, классов эквивалентности и мульти-
элементы сопоставления символов, используемые в расширенном регулярном выражении, определенном для
домен даэкспр ключевое слово locale в LC_MESSAGES категория.

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

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

НЛПСАТ Определите расположение каталогов сообщений для обработки LC_MESSAGES.

АСИНХРОННЫЙ СОБЫТИЯ


По умолчанию.

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


Не используется.

СТДЕРР


Подсказка должна быть записана в стандартную ошибку при условиях, указанных в
ОПИСАНИЕ раздела. Приглашение должно содержать путь назначения, но его формат
в противном случае не указано. В противном случае стандартная ошибка должна использоваться только для диагностики.
сообщений.

ВЫВОД FILES


Выходные файлы могут быть любого типа.

РАСПРОСТРАНЕНИЯ ОПИСАНИЕ


Нет.

ВЫХОД статус


Должны быть возвращены следующие значения выхода:

0 Все файлы были успешно скопированы.

> 0 Произошла ошибка.

ПОСЛЕДСТВИЯ OF ОШИБКИ


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

Ассоциация после разделах Он информативный.

ЗАЯВЛЕНИЕ ИСПОЛЬЗОВАНИЕ


Биты set-user-ID и set-group-ID явно сбрасываются при создании файлов. Этот
заключается в том, чтобы запретить пользователям создавать программы, которые устанавливают для них идентификатор пользователя или группу.
при копировании файлов или чтобы сделать файлы set-user-ID или set-group-ID доступными для новых групп
пользователей. Например, если для файла задан идентификатор пользователя, а у копии другой идентификатор группы.
чем источник, новая группа пользователей имеет разрешение на выполнение программы set-user-ID, чем
делал ранее. В частности, это проблема суперпользователей, копирующих деревья пользователей.

ПРИМЕРЫ


Нет.

ОБОСНОВАНИЕ


Ассоциация −я опция существует в системах BSD, давая приложениям и пользователям возможность избежать
случайное удаление файлов при копировании. Хотя версия BSD 4.3 не запрашивает, если
стандартный ввод не является терминалом, разработчики стандарта решили, что использование −я - это
запрос на взаимодействие, поэтому, когда целевой путь существует, утилита принимает
инструкции от всего, что отвечает на стандартный ввод.

Точный формат интерактивных подсказок не указан. Только общий характер
содержание подсказок указывается, потому что реализациям может потребоваться более информативный
подсказки, чем те, которые использовались в исторических реализациях. Следовательно, приложение, использующее
−я опция полагается на систему, чтобы обеспечить наиболее подходящий диалог непосредственно с пользователем,
на основе указанного поведения.

Ассоциация -p опция - историческая практика в системах BSD, дублирующая время последних данных
модификация и время последнего доступа. Этот том POSIX.1-2008 расширяет его, чтобы сохранить
идентификаторы пользователей и групп, а также права доступа к файлам. Это требование очевидно
проблемы в том, что каталоги почти наверняка изменяются после копирования. Этот
том POSIX.1-2008 требует сохранения времени модификации. Заявление
что порядок, в котором дублируются характеристики, не указан, чтобы разрешить
реализации, чтобы обеспечить максимальную безопасность для пользователя. Реализации
следует учитывать очевидные проблемы безопасности, связанные с настройкой владельца, группы,
и режим в неправильном порядке или создание файлов с владельцем, группой или режимом, отличным от
окончательное значение.

Не указано, были ли cp пишет диагностические сообщения, когда идентификаторы пользователя и группы не могут
быть установленным в связи с широко распространенной практикой использования пользователями -p дублировать некоторую часть
характеристики файла, равнодушные к дублированию других. Исторические реализации
писать диагностические сообщения только об ошибках, кроме [ЭПЕРМ].

Более ранние версии этого стандарта включали поддержку -r возможность скопировать файл
иерархии. В -r опция является исторической практикой в ​​системах, основанных на BSD и BSD. Этот
опция больше не указывается в POSIX.1-2008, но может присутствовать в некоторых реализациях.
Ассоциация −R опция была добавлена ​​как близкий синоним к -r вариант, выбранный для соответствия
все другие опции в этом томе POSIX.1-2008, которые рекурсивно спускаются по каталогам.

Разница между −R и удаленный -r вариант находится в лечении cp файла
типы, отличные от обычных и справочных. Это было определено реализацией, как - вариант
обработанные специальные файлы, чтобы разрешить как исторические реализации, так и те, которые выбрали
поддержка -r с теми же способностями, что и −R определяется этим томом POSIX.1-2008. В
оригинал -r flag по историческим причинам не обрабатывал специальные файлы иначе, чем
обычные файлы, но всегда читают файл и копируют его содержимое. У этого были очевидные проблемы
при наличии специальных типов файлов; например, символьные устройства, FIFO и сокеты.

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

Умышленно оставлены права доступа, владельцы и группы созданных специальных типов файлов.
как определено реализацией. Это сделано для того, чтобы системы удовлетворяли особым требованиям (для
Например, позволяя пользователям создавать специальные устройства для персонажей, но требуя, чтобы они были
принадлежит определенной группе). В общем, настоятельно рекомендуется, чтобы разрешения,
владелец и группа должны быть такими же, как если бы пользователь запустил исторический MKNOD, ln, Или другие
утилита для создания файла. Также вероятно, что требуются дополнительные привилегии для
создавать блочные, символьные или другие специальные типы файлов, определяемые реализацией.

Кроме того, -p опция явно требует, чтобы все set-user-ID и set-group-ID
разрешения будут отменены, если невозможно установить какой-либо из идентификаторов владельца или группы. Это сохранить
пользователи от непреднамеренного предоставления специальных привилегий при копировании программ.

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

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

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

Это не требование, чтобы cp обнаруживать попытки скопировать файл на себя; тем не мение,
реализациям настоятельно рекомендуется это делать. Исторические реализации обнаружили
попытка в большинстве случаев.

В этом томе POSIX.1-2008 есть два метода копирования поддеревьев. Другой метод
описывается как часть чел утилита (см. чел). Оба метода - историческая практика.
Ассоциация cp Утилита предоставляет более простой и интуитивно понятный интерфейс, а чел предлагает более тонкий
степень детализации управления. Каждый обеспечивает дополнительную функциональность по отношению к другому; в
частности, чел поддерживает жесткую структуру иерархии, в то время как cp не. Это
намерение разработчиков стандарта, чтобы результаты были аналогичными (используя соответствующие
комбинации опций в обеих утилитах). Результаты не обязательно должны быть идентичными;
приложениям казалось недостаточным, чтобы уравновесить сложность
реализации должны гарантировать, что результаты будут точно идентичны.

Формулировка, позволяющая cp для копирования каталога в файлы определенных реализацией типов, не
указанный в томе Системных интерфейсов POSIX.1-2008, предоставляется таким образом, чтобы
реализации, поддерживающие символические ссылки, не требуются для запрета копирования каталогов
символическим ссылкам. Другие расширения тома System Interfaces файла POSIX.1-2008
Типы, возможно, также должны использовать эту лазейку.

БУДУЩЕЕ НАПРАВЛЕНИЯ


Нет.

Используйте cpposix онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

Команды Linux

Ad