shithub: riscv

ref: 52cacba37c6f3a125ef931afa4b9c2cdb7438fef
dir: /sys/man/1/cp/

View raw version
.TH CP 1 
.SH NAME
cp, fcp, mv  \- copy, move files
.SH SYNOPSIS
.B cp
[
.B -gux
]
.I file1 file2
.br
.B cp
[
.B -gux
]
.I file ... directory
.PP
.B fcp
[
.B -gux
]
.I file1 file2
.br
.B fcp
[
.B -gux
]
.I file ... directory
.PP
.B mv
.I file1 file2
.br
.B mv
.I file ... directory
.SH DESCRIPTION
In the first form
.I file1
is any name and
.I file2
is any name except an existing directory.
In the second form the commands
copy or move one or more
.I files
into a
.I directory
under their original file names, as if by a sequence of 
commands in the first form.
Thus
.L "cp f1 f2 dir
is equivalent to
.LR "cp f1 dir/f1; cp f2 dir/f2" .
.PP
.I Cp
copies the contents of plain
.I file1
to
.IR file2 .
The mode and owner of  
.I file2
are preserved if it already
exists; the mode of
.I file1
is used otherwise.
The
.B -x
option sets the mode and modified time of
.I file2
from
.IR file1 ;
.B -g
sets the group id; and
.B -u
sets the group id and user id (which is usually only possible if the file server is in an administrative mode).
.PP
.I Fcp
behaves like
.I cp
but transfers multiple blocks in parallel while copying;
it is noticeably faster than
.I cp
when the files involved are stored on servers connected over long-distance lines.
It is only appropriate to use
.I fcp
with file servers that respect the
.I offset
in
.IR read (5)
and
.I write
messages.
This includes the disk-based file systems and ramfs
but excludes most device file systems.
.PP
.I Mv
moves
.I file1
to
.IR file2 .
If the files are in the same directory, 
.I file1
is just renamed;
otherwise
.I mv
behaves like
.I cp
.B -x
followed by
.B rm
.IR file1 .
.I Mv
will rename directories,
but it refuses to move a directory into another directory.
.SH SOURCE
.B /sys/src/cmd/cp.c
.br
.B /sys/src/cmd/fcp.c
.br
.B /sys/src/cmd/mv.c
.SH "SEE ALSO"
.IR cat (1),
.I dircp
in
.IR tar (1),
.IR stat (2),
.IR read (5)
.SH DIAGNOSTICS
.IR Cp ,
.IR fcp ,
and
.I mv
refuse to copy or move files onto themselves.