fbpx
维基百科

cp (Unix)

cp是一个用于复制文件UNIX命令。文件可以被复制到相同目录下,也可以复制到其他完全不同的目录中(甚至复制到不同的文件系统或是硬盘中)。如果文件将被复制到相同的目录中,那么目标文件文件必须使用不同于原文件的文件名;在其他情况下,目标文件的名称允许使用与原文件相同或不同的名称。原始的文件不会被改变。

cp 命令现在拥有多种实现版本,两个主要的版本是POSIX cpGNU cp。 GNU cp 有许多额外的选项。[1]

用法 编辑

将文件复制为另一文件:

 cp [-f] [-H] [-i] [-p][--] 源文件 目标文件 

将文件复制到一目录下:

 cp [-f] [-H] [-i] [-p] [-r | -R] [--] 源文件 ... 目标目录 

将目录复制为另一目录(必须使用参数 -r 或 -R):

 cp [-f] [-H] [-i] [-p] [--] { -r | -R } 源目录 ... 目标目录 

参数 编辑

-f (强制) – 在目标文件因没有写权限而无法打开时删除目标文件。这一移除动作先于所有的cp命令复制动作。

-L (间接引用) – 使cp命令跟随符号链接,这样cp命令将复制符号链接指向的文件而不是符号链接到目的位置。

-i (交互) – 提示您将要被覆盖之文件的文件名。当目标目录或是目标文件中包含一个与原文件(或目录)名字相同的文件(或目录)时,交互就会发生,如果你输入 'y' 或者区域语言中等价于 'y'的字符,cp操作将覆盖目标文件,其余的任意回答都会避免目标文件被原文件覆盖。

-p (保持) – 对于每个原文件(或目录),在复制时也复制下述特性:

  • 最后一次修订时间最后一次访问时间
  • 所属用户ID所属组ID(仅在有权限如此做时)。
  • 文件权限位以及SUIDSGID权限位。

-R or -r (递归) – 复制目录(递归地复制目录中的所有内容)

范例 编辑

欲复制原文件的一份副本,执行:

 cp prog.c prog.bak 

这一操作把文件prog.c复制为prog.bak。如果prog.bak文件不存在,cp命令将创建此文件。如果目标文件已存在,cp命令将用原文件的内容替代目标文件中的内容。

欲复制当前工作目录中的文件到另外一目录中,执行:

 cp jones /home/nick/clients 

这一操作将 jones 文件复制到 /home/nick/clients/jones。

欲将文件复制为新的文件,并保留修改日期与相关的访问控制权限,执行:

 cp -p smith smith.jr 

操作将smith文件复制为smith.jr文件。此时系统将给与smith.jr与smith文件相同的修改日期和时间而并不使用当前的系统时间。smith.jr文件同时也继承了smith文件的访问控制保护。

欲将某目录中所有文件复制到新目录中,执行:

 cp /home/janet/clients/* /home/nick/customers 

这一操作仅将clients目录中的文件复制到customers目录中。

欲将一个目录,包括其包含的所有文件与子目录复制到另一目录中,执行:

 cp -R /home/nick/clients /home/nick/customers 

这一复制将clients目录以及其中包含的所有文件、子目录与子目录中的文件复制到customers/clients目录下。 注意在原目录的结尾无斜杠符:如果你在GNU基础的系统上执行cp -R /home/nick/clients/ /home/nick/customers,这与原目录没有加结尾斜杠符的效果相同。 但如果你在BSD基础系统上执行相同的命令,这将复制所有client目录中的内容,而不是client目录本身。

欲将复制指定的一些文件到另一目录中,执行:

 cp jones lewis smith /home/nick/clients 

这一操作复制当前工作目录下的 jones、lewis和smith 文件到 /home/nick/clients 目录。

欲使用模式匹配字符集来复制文件,执行:

 cp programs/*.c . 

这一操作将programs目录下所有以 .c 结尾的文件都复制到当前目录下,当前目录用单个点符号 . 表示。在 .c 和最后的 . 之间必须用空格隔开。

将文件复制到另一已存在文件的过程是:将已存在文件以更新模式打开(使用这一模式需要拥有目标文件的写入权限)。操作的结果是目标文件保留了其原来拥有的权限位。

相关 Unix 命令 编辑

  • cpio – 复制完整的目录结构到其他文件系统位置
  • tar – 建立文件归档
  • link – 建立文件或目录的链接的系统调用
  • ln – 建立文件或目录的链接文件
  • mv – 移动文件或目录
  • rm – 移除文件或目录
  • unlink – 删除文件或目录的系统调用
  • chmod – 修改文件或目录的权限位
  • chown – 修改文件或目录的隶属关系
  • chgrp – 修改文件或目录的所属组
  • uucp – UNIX间复制协议
  • scp – 通过SSH隧道安全复制

参见 编辑

参考来源 编辑

  1. ^ 存档副本. [2011-07-09]. (原始内容于2011-06-24). 

unix, cp是一个用于复制文件的unix命令, 文件可以被复制到相同目录下, 也可以复制到其他完全不同的目录中, 甚至复制到不同的文件系统或是硬盘中, 如果文件将被复制到相同的目录中, 那么目标文件文件必须使用不同于原文件的文件名, 在其他情况下, 目标文件的名称允许使用与原文件相同或不同的名称, 原始的文件不会被改变, 命令现在拥有多种实现版本, 两个主要的版本是posix, 有许多额外的选项, 目录, 用法, 参数, 范例, 相关, unix, 命令, 参见, 参考来源用法, 编辑将文件复制为另一文件, 源. cp是一个用于复制文件的UNIX命令 文件可以被复制到相同目录下 也可以复制到其他完全不同的目录中 甚至复制到不同的文件系统或是硬盘中 如果文件将被复制到相同的目录中 那么目标文件文件必须使用不同于原文件的文件名 在其他情况下 目标文件的名称允许使用与原文件相同或不同的名称 原始的文件不会被改变 cp 命令现在拥有多种实现版本 两个主要的版本是POSIX cp 与 GNU cp GNU cp 有许多额外的选项 1 目录 1 用法 2 参数 3 范例 4 相关 Unix 命令 5 参见 6 参考来源用法 编辑将文件复制为另一文件 cp f H i p 源文件 目标文件 将文件复制到一目录下 cp f H i p r R 源文件 目标目录 将目录复制为另一目录 必须使用参数 r 或 R cp f H i p r R 源目录 目标目录参数 编辑 f 强制 在目标文件因没有写权限而无法打开时删除目标文件 这一移除动作先于所有的cp命令复制动作 L 间接引用 使cp命令跟随符号链接 这样cp命令将复制符号链接指向的文件而不是符号链接到目的位置 i 交互 提示您将要被覆盖之文件的文件名 当目标目录或是目标文件中包含一个与原文件 或目录 名字相同的文件 或目录 时 交互就会发生 如果你输入 y 或者区域语言中等价于 y 的字符 cp操作将覆盖目标文件 其余的任意回答都会避免目标文件被原文件覆盖 p 保持 对于每个原文件 或目录 在复制时也复制下述特性 最后一次修订时间与最后一次访问时间 所属用户ID和所属组ID 仅在有权限如此做时 文件权限位以及SUID和SGID权限位 R or r 递归 复制目录 递归地复制目录中的所有内容 范例 编辑欲复制原文件的一份副本 执行 cp prog c prog bak 这一操作把文件prog c复制为prog bak 如果prog bak文件不存在 cp命令将创建此文件 如果目标文件已存在 cp命令将用原文件的内容替代目标文件中的内容 欲复制当前工作目录中的文件到另外一目录中 执行 cp jones home nick clients 这一操作将 jones 文件复制到 home nick clients jones 欲将文件复制为新的文件 并保留修改日期与相关的访问控制权限 执行 cp p smith smith jr 操作将smith文件复制为smith jr文件 此时系统将给与smith jr与smith文件相同的修改日期和时间而并不使用当前的系统时间 smith jr文件同时也继承了smith文件的访问控制保护 欲将某目录中所有文件复制到新目录中 执行 cp home janet clients home nick customers 这一操作仅将clients目录中的文件复制到customers目录中 欲将一个目录 包括其包含的所有文件与子目录复制到另一目录中 执行 cp R home nick clients home nick customers 这一复制将clients目录以及其中包含的所有文件 子目录与子目录中的文件复制到customers clients目录下 注意在原目录的结尾无斜杠符 如果你在GNU基础的系统上执行cp R home nick clients home nick customers 这与原目录没有加结尾斜杠符的效果相同 但如果你在BSD基础系统上执行相同的命令 这将复制所有client目录中的内容 而不是client目录本身 欲将复制指定的一些文件到另一目录中 执行 cp jones lewis smith home nick clients 这一操作复制当前工作目录下的 jones lewis和smith 文件到 home nick clients 目录 欲使用模式匹配字符集来复制文件 执行 cp programs c 这一操作将programs目录下所有以 c 结尾的文件都复制到当前目录下 当前目录用单个点符号 表示 在 c 和最后的 之间必须用空格隔开 将文件复制到另一已存在文件的过程是 将已存在文件以更新模式打开 使用这一模式需要拥有目标文件的写入权限 操作的结果是目标文件保留了其原来拥有的权限位 相关 Unix 命令 编辑cpio 复制完整的目录结构到其他文件系统位置 tar 建立文件归档 link 建立文件或目录的链接的系统调用 ln 建立文件或目录的链接文件 mv 移动文件或目录 rm 移除文件或目录 unlink 删除文件或目录的系统调用 chmod 修改文件或目录的权限位 chown 修改文件或目录的隶属关系 chgrp 修改文件或目录的所属组 uucp UNIX间复制协议 scp 通过SSH隧道安全复制参见 编辑Unix工具列表参考来源 编辑 存档副本 2011 07 09 原始内容存档于2011 06 24 取自 https zh wikipedia org w index php title Cp Unix amp oldid 61947562, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。