Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
cp(1)				 User Commands				 cp(1)

NAME
       cp - copy files

SYNOPSIS
       /usr/bin/cp [-fip@] source_file target_file

       /usr/bin/cp [-fip@] source_file... target

       /usr/bin/cp  -r | -R [-H	| -L | -P]  [-fip@] source_dir... target

       /usr/xpg4/bin/cp	[-fip@]	source_file target_file

       /usr/xpg4/bin/cp	[-fip@]	source_file... target

       /usr/xpg4/bin/cp	 -r | -R [-H | -L | -P]	 [-fip@] source_dir... target

DESCRIPTION
       In the first synopsis form, neither source_file nor target_file are di-
       rectory files, nor can they have	the same name. The cp  utility	copies
       the  contents  of  source_file  to  the	destination path named by tar-
       get_file. If target_file	exists,	cp overwrites its  contents,  but  the
       mode  (and  ACL if applicable), owner, and group	associated with	it are
       not changed.  The last modification time	of target_file	and  the  last
       access  time  of	 source_file are set to	the time the copy was made. If
       target_file does	not exist, cp creates a	 new  file  named  target_file
       that has	the same mode as source_file except that the sticky bit	is not
       set unless the user is super-user. In this case,	the owner and group of
       target_file  are	those of the user, unless the setgid bit is set	on the
       directory containing the	newly created file. If the directory's	setgid
       bit  is set, the	newly created file has the group of the	containing di-
       rectory rather than of the creating user. If target_file	is a  link  to
       another	file,  cp overwrites the link destination with the contents of
       source_file; the	link(s)	from target_file remains.

       In the second synopsis form, one	or more	source_files are copied	to the
       directory  specified  by	target.	It is an error if any source_file is a
       file of type directory, if target either	does not exist or is not a di-
       rectory.

       In  the	third  synopsis	 form,	one  or	 more directories specified by
       source_dir are copied to	the directory specified	by target.  Either  -r
       or  -R must be specified.  For each source_dir, cp copies all files and
       subdirectories.

OPTIONS
       The  following  options	are  supported	for   both   /usr/bin/cp   and
       /usr/xpg4/bin/cp:

       -f	Unlink.	 If a file descriptor for a destination	file cannot be
		obtained, this option attempts to unlink the destination  file
		and proceed.

       -H	Takes  actions based on	the type and contents of the file ref-
		erenced	by any symbolic	link specified as a source_file	 oper-
		and.

       -i	Interactive.  cp  prompts  for	confirmation whenever the copy
		would overwrite	an existing target. A y	answer means that  the
		copy  should  proceed. Any other answer	prevents cp from over-
		writing	target.

       -L	Takes actions based on the type	and contents of	the file  ref-
		erenced	 by any	symbolic link specified	as a source_file oper-
		and or any symbolic links encountered during  traversal	 of  a
		file hierarchy.

       -P	Takes  actions on any symbolic link specified as a source_file
		operand	or any symbolic	link encountered during	traversal of a
		file hierarchy.

       -r	Recursive.  cp copies the directory and	all its	files, includ-
		ing any	subdirectories and their files to target.  Unless  the
		-H,  -L,  or  -P option	is specified, the -L option is used as
		the default mode.

       -R	Same as	-r, except pipes are replicated, not read from.

       -@	Preserves extended attributes. cp attempts to copy all of  the
		source	file's extended	attributes along with the file data to
		the destination	file.

       Specifying more than one	of the mutually-exclusive options -H, -L,  and
       -P is not considered an error. The last option specified	determines the
       behavior	of the utility.

   /usr/bin/cp
       The following option is supported for /usr/bin/cp only:

       -p	Preserve. cp duplicates	not only the contents of  source_file,
		but  also  preserves the owner and group id, permission	modes,
		modification and access	time, ACLs, and	 extended  attributes,
		if  applicable.	 The  command can fail if ACLs are copied to a
		file system without appropriate	support. The command does  not
		fail  if  unable to preserve extended attributes, modification
		and access time, or permission modes. If  unable  to  preserve
		owner and group	id, cp does not	fail, and it clearsS_ISUID and
		S_ISGID	bits in	the target. cp prints a	diagnostic message  to
		stderr	and  return  a non-zero	exit status if unable to clear
		these bits.

		In order to preserve the owner and group id, permission	modes,
		and  modification and access times, users must have the	appro-
		priate file access permissions.	This includes being  superuser
		or the same owner id as	the destination	file.

		When  both  -p and -@ options are specified, the -p option de-
		termines the behavior. However,	the command can	fail if	unable
		to preserve extended attributes.

   /usr/xpg4/bin/cp
       The following option is supported for /usr/xpg4/bin/cp only:

       -p	Preserve.  cp duplicates not only the contents of source_file,
		but also preserves the owner and group id,  permission	modes,
		modification  and  access time,	ACLs, and extended attributes,
		if applicable. The command can fail if ACLs are	 copied	 to  a
		file  system without appropriate support. The command does not
		fail if	unable to preserve extended attributes.	If  unable  to
		duplicate  the	modification and access	time or	the permission
		modes, cp prints a diagnostic message to stderr	and  return  a
		non-zero  exit	status.	 If unable to preserve owner and group
		id, cp does not	fail, and it clearsS_ISUID and S_ISGID bits in
		the  target.  cp prints	a diagnostic message to	stderr and re-
		turn a non-zero	exit status if unable to clear these bits.

		In order to preserve the owner and group id, permission	modes,
		and  modification and access times, users must have the	appro-
		priate file access permissions.	This includes being  superuser
		or the same owner id as	the destination	file.

		When  both -p and -@ options are specified, the	last specified
		-p or -@ option	determines the behavior.

OPERANDS
       The following operands are supported:

       source_file     A pathname of a regular file to be copied.

       source_dir      A pathname of a directory to be copied.

       target_file     A pathname of an	existing or  non-existing  file,  used
		       for the output when a single file is copied.

       target	       A pathname of a directory to contain the	copied files.

USAGE
       See largefile(5)	for the	description of the behavior of cp when encoun-
       tering files greater than or equal to 2 Gbyte ( 2**31 bytes).

EXAMPLES
       Example 1: Copying a File

       The following example copies a file:

       example%	cp goodies goodies.old

       example%	ls goodies*
       goodies goodies.old

       Example 2: Copying a List of Files

       The following example copies a list of files to	a  destination	direc-
       tory:

       example%	cp ~/src/*   /tmp

       Example 3: Copying a Directory

       The  following  example copies a	directory, first to a new, and then to
       an existing destination directory

       example%	ls ~/bkup
       /usr/example/fred/bkup not found

       example%	cp -r ~/src ~/bkup

       example%	ls -R ~/bkup
       x.c y.c z.sh

       example%	cp -r ~/src ~/bkup

       example%	ls -R ~/bkup
       src x.c y.c z.sh
       src:
       x.c y.c z.s

ENVIRONMENT VARIABLES
       See environ(5) for descriptions of the following	environment  variables
       that  affect  the  execution of cp: LANG, LC_ALL, LC_COLLATE, LC_CTYPE,
       LC_MESSAGES, and	NLSPATH.

EXIT STATUS
       The following exit values are returned:

       0	All files were copied successfully.

       >0	An error occurred.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

   /usr/bin/cp
       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Availability		     |SUNWcsu			   |
       +-----------------------------+-----------------------------+
       |CSI			     |Enabled			   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Stable			   |
       +-----------------------------+-----------------------------+

   /usr/xpg4/bin/cp
       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Availability		     |SUNWxcu4			   |
       +-----------------------------+-----------------------------+
       |CSI			     |Enabled			   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Standard			   |
       +-----------------------------+-----------------------------+

SEE ALSO
       chmod(1), chown(1), setfacl(1),	utime(2),  attributes(5),  environ(5),
       fsattr(5), largefile(5),	standards(5)

NOTES
       The permission modes of the source file are preserved in	the copy.

       A  --  permits the user to mark the end of any command line options ex-
       plicitly, thus allowing cp to recognize filename	arguments  that	 begin
       with a -.

SunOS 5.10			  13 May 2004				 cp(1)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | OPERANDS | USAGE | EXAMPLES | ENVIRONMENT VARIABLES | EXIT STATUS | ATTRIBUTES | SEE ALSO | NOTES

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=cp&sektion=1&manpath=SunOS+5.10>

home | help