BSD 4_3_Reno release
[unix-history] / usr / src / bin / cp / cp.1
index f8629ca..4c09807 100644 (file)
-.\" Copyright (c) 1980 Regents of the University of California.
-.\" All rights reserved.  The Berkeley software License Agreement
-.\" specifies the terms and conditions for redistribution.
+.\" Copyright (c) 1989, 1990 The Regents of the University of California.
+.\" All rights reserved.
 .\"
 .\"
-.\"    @(#)cp.1        4.1 (Berkeley) %G%
+.\" Redistribution and use in source and binary forms are permitted provided
+.\" that: (1) source distributions retain this entire copyright notice and
+.\" comment, and (2) distributions including binaries display the following
+.\" acknowledgement:  ``This product includes software developed by the
+.\" University of California, Berkeley and its contributors'' in the
+.\" documentation or other materials provided with the distribution and in
+.\" all advertising materials mentioning features or use of this software.
+.\" Neither the name of the University nor the names of its contributors may
+.\" be used to endorse or promote products derived from this software without
+.\" specific prior written permission.
+.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
+.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 .\"
 .\"
-.TH CP 1 
-.UC 4
-.SH NAME
-cp \- copy
-.SH SYNOPSIS
-.B cp
-[
-.B \-i
-] file1 file2
-.PP
-.B cp
-[
-.B \-i
-] file ... directory
-.SH DESCRIPTION
-.I File1
-is copied onto
-.IR file2 .
-The mode and owner of  
-.I file2
-are preserved if it already
-existed; the mode of the source file
-is used otherwise.
-.PP
-In the second form, one or more
-.I files
-are copied into the
-.I directory
-with their original file-names.
-.PP
-.I Cp
-refuses to copy a file onto itself.
-.PP
-If the 
-.B \-i
-option is specified, 
-.I cp
-will prompt the user with the name of the file
-whenever the copy will cause an old file to be
-overwritten. An answer of 'y' will cause 
-.I cp
-to continue. Any other answer will prevent it
-from overwriting the file.
-.SH "SEE ALSO"
-cat(1), pr(1), mv(1)
+.\"     @(#)cp.1       6.11 (Berkeley) 7/24/90
+.\"
+.Dd July 24, 1990
+.Dt CP 1
+.Os BSD 4
+.Sh NAME
+.Nm cp
+.Nd copy files
+.Sh SYNOPSIS
+.Nm cp
+.Op Fl Rfhip
+.Ar source_file target_file
+.Nm cp
+.Op Fl Rfhip
+.Ar source_file ... target_directory
+.Sh DESCRIPTION
+In the first synopsis form, the
+.Nm cp
+utility copies the contents of the
+.Ar source_file
+to the
+.Ar target_file .
+In the second synopsis form,
+the contents of each named
+.Ar source_file
+is copied to the destination
+.Ar target_directory .
+The names of the files themselves are not changed.
+If
+.Nm cp
+detects an attempt to copy a file to itself, the copy will fail.
+.Pp
+The following options are available:
+.Tw Ds
+.Tp Fl f
+For each existing destination pathname, remove it and
+create a new file, without prompting for confirmation
+regardless of its permissions.
+(The
+.Fl i
+option is ignored if the
+.Fl f
+option is specified.)
+.Tp Fl h
+Forces
+.Nm cp
+to follow symbolic links.
+Provided for the
+.Fl R
+option which does not follow symbolic links by default.
+.Tp Fl i
+Causes
+.Nm cp
+to write a prompt to standard error before copying a file that would
+overwrite an existing file.
+If the response from the standard input begins with the character
+.Sq Li y ,
+the file is copied if permissions allow the copy.
+.Tp Fl p
+Causes
+.Nm cp
+to preserve in the copy as many of the modification time, access time,
+file mode, user ID, and group ID as allowed by permissions.
+.Pp
+If the user ID and group ID cannot be preserved, no error message
+is displayed and the exit value is not altered.
+.Pp
+If the source file has its set user ID bit on and the user ID cannot
+be preserved, the set user ID bit is not preserved
+in the copy's permissions.
+If the source file has its set group ID bit on and the group ID cannot
+be preserved, the set group ID bit is not preserved
+in the copy's permissions.
+If the source file has both the set user ID and set group ID bits
+on and either the user ID or group ID cannot be preserved, neither
+the set user ID or set group ID bits are preserved in the copy's
+permissions.
+.Tp Fl R
+If
+.Ar source_file
+designates a directory,
+.Nm cp
+copies the directory and the entire subtree connected at that point.
+This option also causes symbolic links to be copied, rather than
+indirected through, and for
+.Nm cp
+to create special files rather than copying them as normal files.
+Created directories have the same mode as the corresponding source
+directory, unmodified by the process' umask.
+.Tp
+.Pp
+For each destination file that already exists, its contents are
+overwritten if permissions allow, but its mode, user ID, and group
+ID are unchanged.
+.Pp
+If the destination file does not exist, the mode of the source file is
+used as modified by the file mode creation mask
+.Pf \&( Ic umask ,
+see
+.Xr csh 1 ) .
+If the source file has its set user ID bit on, that bit is removed
+unless both the source file and the destination file are owned by the
+same user.
+If the source file has its set group ID bit on, that bit is removed
+unless both the source file and the destination file are in the same
+group and the user is a member of that group.
+If both the set user ID and set group ID bits are set, all of the above
+conditions must be fulfilled or both bits are removed.
+.Pp
+Appropriate permissions are required for file creation or overwriting.
+.Pp
+Symbolic links are followed unless the
+.Fl R
+option is specified, in which case the link itself is copied.
+.Pp
+.Nm Cp
+exits 0 on success, >0 if an error occurred.
+.Sh SEE ALSO
+.Xr mv 1 ,
+.Xr rcp 1 ,
+.Xr umask 2 ,
+.Xr csh 1
+.Sh HISTORY
+The
+.Nm cp
+command appeared in Version 6 AT&T UNIX.