cp和mv命令

注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。

一、cp命令

cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

语法:

cp(选项)(参数)

选项:

-a:此参数的效果和同时指定"-dpR"参数相同;

-d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;

-f:强行复制文件或目录,不论目标文件或目录是否已存在;

-i:覆盖既有文件之前先询问用户;

-l:对源文件建立硬连接,而非复制文件;

-p:保留源文件或目录的属性;

-R/r:递归处理,将指定目录下的所有文件与子目录一并处理;

-s:对源文件建立符号连接,而非复制文件;

-u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;

-S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;

-b:覆盖已存在的文件目标前将目标文件备份;

-v:详细显示命令执行的操作。

参数:

源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项;

目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。

实例:

如果把一个文件复制到一个目标文件中,而目标文件已经存在,那么,该目标文件的内容将被破坏。此命令中所有参数既可以是绝对路径名,也可以是相对路径名。通常会用到.或..的形式。

例如,下面的命令将指定文件复制到当前目录下:

cp ../mary/homework/assign .

所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。如果没有文件复制的权限,则系统会显示出错信息。

将文件file复制到目录/usr/men/tmp下,并改名为file1:

cp file /usr/men/tmp/file1

将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh中:

cp -r /usr/men /usr/zh

交互式地将目录/usr/men中的以m打头的所有.c文件复制到目录/usr/zh中:

cp -i /usr/men m*.c /usr/zh

在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。此时可以采用以下方法:

cp aaa/* /bbb

复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。

cp -r aaa/* /bbb

这次依然需要按Y来确认操作,但是没有忽略子目录。

cp -r -a aaa/* /bbb

依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。

\cp -r -a aaa/* /bbb

成功,没有提示按Y、传递了目录属性、没有略过目录。

二、mv命令

mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。

mv命令可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中。源文件被移至目标文件有两种不同的结果:

1、如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。

2、如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。

语法:

mv(选项)(参数)

选项:

--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;

-b:当文件存在时,覆盖前,为其创建一个备份;

-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;

-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。

--strip-trailing-slashes:删除源文件中的斜杠“/”;

-S<后缀>:为备份文件指定后缀,而不使用默认的后缀;

--target-directory=<目录>:指定源文件要移动到目标目录;

-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

参数:

源文件:源文件列表。

目标文件:如果“目标文件”是文件名则在移动文件的同时,将其改名为“目标文件”;如果“目标文件”是目录名则将源文件移动到“目标文件”下。

实例:

将文件ex3改名为new1:

mv ex3 new1

将目录/usr/men中的所有文件移到当前目录(用.表示)中:

mv /usr/men/* .

参考网站: http://man.linuxde.net

时间: 2024-11-10 18:17:04

cp和mv命令的相关文章

Linux命令行下cp,rm,mv命令的使用

以下的内容来源于<鸟哥的私房菜> Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件对比两文件的新旧而予以更新,        以及复制整个目录等        语法            cp [-adfilprsu] 源文件 目标文件                    源文件(source)                目标文件(destination)            选项

环境变量PATH,cp,mv命令,文档查看cat/more/less/head/tail命令

环境变量PATH (path是一个变量) which :which+命令  可以查看到命令的路径和是否有别名 其实命令就是一个文件,我们之所以能够使用它是因为它存在于各种的 bin文件下 把我们定义的命令放在环境变量PATH中,这样我们就可以直接的使用我们定义的命令(其实PATH就是绝对路径) 但是我们再次打开终端使用我们的定义变量时是不能运行的. 要使我们定义的命令永久生效,修改配置文件,让定义的命令每次开机时都加载命令 编辑此文件  vi /etc/profile 在这里面的最后一行添加上P

笔记3 (目录结构、文件类型、环境变量、命令:ls、cd、mkdir、rmdir、rm、alias、cp、mv)

系统目录结构 ls /  查看根下面的目录 tree命令以树状图列出文件目录结构 tree -L 2 只查看两层 /usr/bin/  /usr/sbin/  /bin/  /sbin/  都是存平时用的命令 /sbin/  下面的命令一般都是root用户的 /bin/   下面的都是普通用户的 /boot/  是存系统启动相关的文件 /dev/   是linux系统里边特有的设备文件 /etc/   是系统一些配置文件所在的路径 /home/  用户的家目录 /lib/ /lib64/ 存系统

Linux常用命令001之ls、mkdir、cd、pwd、rmdir、rm、cp、mv、ln

001_Linux常用命令 之ls.mkdir.cd.pwd.rmdir.rm.cp.mv.ln ===================== 正 文 =============================== ××××××目录及文件命令×××××× 1.ls ls [选项] [文件或目录] 选项: -a      ----显示所有文件,包括隐藏文件 -l      ----显示详细信息(long  表示长格式显示 eg:ls -l) -d      ----查看目录属性 -h      --

2.10 环境变量PATH 2.11 cp命令 2.12 mv命令 2.13 文档查看cat/more/less/head/tail

2.10 环境变量PATH 2.11 cp命令 2.12 mv命令 2.13 文档查看cat/more/less/head/tail 2.10 环境变量PATH 如果你的目录在这里面 那么你敲命令句不需要敲绝对路径 但是如果再打开一个终端, 怎么让永久生效呢 系统有一个文件,是可以让它开机 或者是每次打开终端 都回去加载命令的 cat 一下看下文件有没有加上 命令 再打开一个终端 也是可以的 如果先取消掉 就重新改下变量PATH 还可以把里面的命令删掉 vi /etc/profile 重新退出

rm命令,mv命令,cp命令

cp命令:复制文件或目录 例如:cp /root/mulu/abc.txt /tmp  将abc.txt文件复制到tmp下 例如:cp -r /root/mulu      /tmp  将mulu(连同目录下的文件一起复制)复制到tmp下 一般公司的配置文件不能在原配置文件中改(或者要备份): 例如:cp /etc/init.d/network /etc/init.d/networks 如果配置文件出错可用备份文件(一定要把名字再改回原文件名) rm命令:删除 例如:rm /root/mulu/

文件的复制和移动命令:cp和mv

cp:copy复制 命令作用: 复制和移动文件: 2.命令格式: cp [options] source...source destination //源可以有多个,目标只能有一个: 3.参数说明: -f:force强行,强行复制不论目的文件或目录是否存在: -i:interactive交互,覆盖之前先询问用户: -P:preserve,保留源文件或目录的属性,包括所有者.所属组.权限与时间戳: -r:recursive递归,递归复制,连同指定目录下的子目录和文件: -R:recursive同-

Linux命令之文件管理命令cp、mv、rm

cp.copy命令:复制文件或目录 语法: cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY SOURCE... cp SRC DEST: SRC是文件: 如果DEST不存在:新建目标文件,并将SRC复制到目标文件: 如果DEST存在: 如果DEST是文件:用SRC的内容覆盖至DEST文件中: 如果DEST是目录:在DEST目录中新一个与原文件同名的文件,将

Linux基础命令1:cp、mv、rm、tree、mkdir、rmdir

cp:复制文件和目录 语法: cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY SOURCE... 说明: cp命令用在复制文件或目录,如同时指定两个以上文件,其最后的目的目标是一个已存在的目录,则它会把前面指定的所有文件或目录复制到该目录中.而最后的目标并非是一个已存在的目录,则会出现错误信息.          目录 源 不存在 存在且为文件 存在且为目