命令简介:

cp命令用来复制文件或目录。指令英文原义:copy

指令所在路径:/bin/cp

命令语法:

Usage: cp [OPTION]... [-T] SOURCE DEST

or: cp [OPTION]... SOURCE... DIRECTORY

or: cp [OPTION]... -t DIRECTORY SOURCE...

命令参数:

此命令参数是Red Hat Enterprise Linux Server release 5.7下cp命令参数,不同版本Linux的cp命令参数有可能不同。

参数

长参数

描叙

-a

等同于-dR

-b

若删除或者覆盖目标文件,将对目标文件进行备份,备份文件以备份的字符串结尾

-d

复制符号链接

-f

强制复制

-h

强制cp命令复制符号链接。缺省值是跟随符号链接,也就是将文件复制到符号链接指向处。

-i

交互式模式。覆盖目标文件之前先要进行询问

-l

建立硬链接,而非复制

-p

源目录或者文件的属性保留

-P

源目录或者文件的路劲保留

-r/-R

处理指定目录以及子目录

-v

--verbose

显示命令执行的详细信息

--help

显示命令在线帮助

--version

显示命令版本信息

 

使用示例:

 

1: 查看rmdir命令的帮助信息

[root@DB-Server ~]# cp --help

Usage: cp [OPTION]... [-T] SOURCE DEST

  or:  cp [OPTION]... SOURCE... DIRECTORY

  or:  cp [OPTION]... -t DIRECTORY SOURCE...

Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

 

Mandatory arguments to long options are mandatory for short options too.

  -a, --archive                same as -dR --preserve=all

      --backup[=CONTROL]       make a backup of each existing destination file

  -b                           like --backup but does not accept an argument

      --copy-contents          copy contents of special files when recursive

  -d                           same as --no-dereference --preserve=link

  -f, --force                  if an existing destination file cannot be

                                 opened, remove it and try again

  -i, --interactive            prompt before overwrite

  -H                           follow command-line symbolic links

  -l, --link                   link files instead of copying

  -L, --dereference            always follow symbolic links

  -P, --no-dereference         never follow symbolic links

  -p                           same as --preserve=mode,ownership,timestamps

      --preserve[=ATTR_LIST]   preserve the specified attributes (default:

                                 mode,ownership,timestamps), if possible

                                 additional attributes: context, links,

                                 xattr, all

  -c                           same as --preserve=context

      --no-preserve=ATTR_LIST  don't preserve the specified attributes

      --parents                use full source file name under DIRECTORY

  -R, -r, --recursive          copy directories recursively

      --remove-destination     remove each existing destination file before

                                 attempting to open it (contrast with --force)

      --sparse=WHEN            control creation of sparse files

      --strip-trailing-slashes remove any trailing slashes from each SOURCE

                                 argument

  -s, --symbolic-link          make symbolic links instead of copying

  -S, --suffix=SUFFIX          override the usual backup suffix

  -t, --target-directory=DIRECTORY  copy all SOURCE arguments into DIRECTORY

  -T, --no-target-directory    treat DEST as a normal file

  -u, --update                 copy only when the SOURCE file is newer

                                 than the destination file or when the

                                 destination file is missing

  -v, --verbose                explain what is being done

  -x, --one-file-system        stay on this file system

  -Z, --context=CONTEXT        set security context of copy to CONTEXT

      --help     display this help and exit

      --version  output version information and exit

 

By default, sparse SOURCE files are detected by a crude heuristic and the

corresponding DEST file is made sparse as well.  That is the behavior

selected by --sparse=auto.  Specify --sparse=always to create a sparse DEST

file whenever the SOURCE file contains a long enough sequence of zero bytes.

Use --sparse=never to inhibit creation of sparse files.

 

The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.

The version control method may be selected via the --backup option or through

the VERSION_CONTROL environment variable.  Here are the values:

 

  none, off       never make backups (even if --backup is given)

  numbered, t     make numbered backups

  existing, nil   numbered if numbered backups exist, simple otherwise

  simple, never   always make simple backups

 

As a special case, cp makes a backup of SOURCE when the force and backup

options are given and SOURCE and DEST are the same name for an existing,

regular file.

 

Report bugs to bug-coreutils@gnu.org.

[root@DB-Server ~]# man cp

 

2: 拷贝文件file1并更名为file2

[root@DB-Server kerry]# ls

file1

[root@DB-Server kerry]# cp file1 file2

[root@DB-Server kerry]# ls

file1  file2

[root@DB-Server kerry]# 

 

3:拷贝kerry目录下文件到tmp目录下

[root@DB-Server ~]# cp /home/kerry/*  /tmp

[root@DB-Server ~]# cd /tmp

 

4:将目录下的所有目录包括子目录陆续复制到另外一个目录

[root@DB-Server ~]#cp -r /home/tomcat/ /tmp/bak

5: 复制时保留文件属性(保存与源文件相关联的修改日期、时间和访问控制列表等)

 

[root@DB-Server kerry]# ls -lrt

total 8

-rw-r--r-- 1 root root 3886 Jan 19 23:04 install.log.syslog

[root@DB-Server kerry]# cp -p install.log.syslog  install.log.syslog.bak1

[root@DB-Server kerry]# cp install.log.syslog install.log.syslog.bak2

[root@DB-Server kerry]# ls -lrt

total 24

-rw-r--r-- 1 root root 3886 Jan 19 23:04 install.log.syslog.bak1

-rw-r--r-- 1 root root 3886 Jan 19 23:04 install.log.syslog

-rw-r--r-- 1 root root 3886 Jan 19 23:10 install.log.syslog.bak2

 

6: 以交换形式拷贝文件

 

[root@DB-Server kerry]# cp -i /var/log/*  ./

cp: overwrite `./acpid'? n

cp: overwrite `./anaconda.log'? n

cp: overwrite `./anaconda.syslog'? y

cp: overwrite `./anaconda.xlog'? n

cp: omitting directory `/var/log/audit'

cp: overwrite `./boot.log'? n

cp: overwrite `./boot.log.1'? n

cp: overwrite `./boot.log.2'? n

Linux命令学习总结:cp命令的更多相关文章

  1. [转] 在 Linux 中怎样使用cp命令合并目录树

    PS:通过cp -r --link a/* b/* merged 硬链接不需要复制 怎样将两个布局相似的目录树合并成一个新的目录树?为理解该问题让我们思考下面的例子. 假设 dir1 和 dir2 目 ...

  2. Linux学习笔记--cp命令(复制)

    cp:英文名copy,复制的意思. 1. 命令格式: cp [选项] 源文件或文件夹 目标文件或文件夹 cp [选项] 源文件1 源文件2 源文件3 ... 目标文件夹 2. 经常使用选项: &quo ...

  3. Linux下如何使CP命令不提示覆盖

    在Linux下使用CP命令,经常会提示是否覆盖,如果是太批量的文件覆盖,老是这么提示,会很烦的.那如何解决这个问题呢? 我们先来看一下原因吧! 一般我们使用的命令是cp -rf sourcefile ...

  4. linux每天一小步---cp命令详解

    1 命令功能      cp命令用于复制文件或者目录,cp是copy的缩写. 2 命令语法 cp  [参数] 源文件或者目录  目的文件或者目录 3 命令参数 -a  等同于-dRp,保存所有 -d ...

  5. linux shell 学习笔记--内部命令学习

    .基本命令 新手必须要掌握的初级命令 ls 基本的列出所有文件的命令.但是往往就是因为这个命令太简单,所以我们总是低估它.比如 ,用 -R 选项,这是递归选项,ls 将会以目录树的形式列出所有文件, ...

  6. LINUX基础学习之基础命令(4)和 文件的inode信息 --2019-11-28

    一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做”扇区”(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统读取硬盘的时候,不会 ...

  7. Linux命令学习神器!命令看不懂直接给你解释!

    大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件不可能完成的任务. 一般情况下,我们学习一个命令时,要么直接百度去搜索它的用法,要么 ...

  8. Linux 下mv和cp命令

    注意事项:mv与cp的结果不同,mv好像文件"搬家",文件个数并未增加.而cp对文件进行复制,文件个数增加了. 一.cp命令 cp命令用来将一个或多个源文件或者目录复制到指定的目的 ...

  9. linux每日命令(9):cp命令

    一.命令格式: cp [参数] source dest 或 cp [参数] source... directory 二.命令功能: 将源文件复制至目标文件,或将多个源文件复制至目标目录. 三. 命令参 ...

  10. Linux命令学习之xargs命令

    xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具.它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令参数.xargs也可以将 ...

随机推荐

  1. geotrellis使用(十)缓冲区分析以及多种类型要素栅格化

    目录 前言 缓冲区分析 多种类型要素栅格化 总结 参考链接 一.前言        上两篇文章介绍了如何使用Geotrellis进行矢量数据栅格化以及栅格渲染,本文主要介绍栅格化过程中常用到的缓冲区分 ...

  2. [翻译]利用顶点位移的VR畸变校正

    文章英文原网址: http://www.gamasutra.com/blogs/BrianKehrer/20160125/264161/VR_Distortion_Correction_using_V ...

  3. 相克军_Oracle体系_随堂笔记001-概述

    一.Oracle官方支持 1.在线官方文档 http://docs.oracle.com/ 2.metalink.oracle.com,如今已经改成:http://support.oracle.com ...

  4. VS Extract Method

    前言 看重构6.4Replace Temp with Query(以查询取代临时变量)中提到Replace Temp with Query往往是你运用Extract Method之前必不可少的一个步骤 ...

  5. Android Studio获取SHA1和MD5方法

    1,点击Build > Generate Signed APK. 2,打开命令进入C:\Program Files\Java\jdk1.6.0_39\bin(任何已安装的Java目录) 3,键入 ...

  6. 到处都是坑的微信支付V3之 微信支付回调页面

    据上次 到处都是坑的微信支付V3 后很多园友在被虐了千百遍后终于跳转到了亲切的微信支付界面,但输入密码支付后却不知道怎么处理了,接下来补上支付后的处理流程. 1. html中根据前台支付后反馈信息成功 ...

  7. C# 洗牌算法

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精   C#洗牌算法如下: class Program { ...

  8. win10与ubuntu下演示运行.net core rc2 1.0.0.3002702程序

    随着.net core rc2(1.0.0.002702)发布的同时,我们也来在本地 win10与ubuntu玩一下吧. 先简单说下.net core ,在.net core rc1中用的是dnx 工 ...

  9. jquery改变文本框颜色

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. Java时间和时间戳的相互转换

    时间转换为时间戳: /* * 将时间转换为时间戳 */ public static String dateToStamp(String s) throws ParseException{ String ...