命令简介:

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. JSON学习

    1.JSON 语法是 JavaScript 对象表示语法的子集. l  数据在名称/值对中 l  数据由逗号分隔 l  花括号保存对象 l  方括号保存数组 JSON 值可以是: l  数字(整数或浮 ...

  2. 利用Eclipse使用Java OpenCV(Using OpenCV Java with Eclipse)

    最近在上计算机视觉这门课程用到了OpenCV,于是找到了"Using OpenCV Java with Eclipse"这篇博文,是英文的,我将它翻译如下与大家分享 正文: 从2. ...

  3. (十九)WebGIS中I查询的原理及设计(包含AGS、GeoServer、Supermap)

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 我们在使用arcmap时,经常会用到被称为I查询的工具.具体 ...

  4. 奇妙的NULL值,你知道多少

    <NULL值的多义性分析> 谈到NULL值,很多人都是很熟悉,但是深入了解后,又感觉到陌生,对其含义和用法,都无法很准确的理解.NULL在数据库和编程语言中,存在的意义和附带的含义不同. ...

  5. c++之字符型中的特殊字符回车符

    1.字符型的应用之强制类型转换: #include<iostream> using namespace std; int main() { ;i<;i++) { cout<&l ...

  6. Ionic2学习笔记(7):Input

    作者:Grey 原文地址: http://www.cnblogs.com/greyzeng/p/5554610.html           我们先来看一个简单的输入用户名和密码点击登录的界面:   ...

  7. 在AngularJS中的使用Highcharts图表控件

    一.Highcharts简介 Highcharts是一款非常好用的前端图表控件,正如其中文网介绍的那样:功能强大.开源.美观.图表丰富.兼容绝大多数浏览器的纯js图表库. 如果你的项目是基于jquer ...

  8. 【转】浅谈MVC与三层架构

    首先给大家引入下MVC的概念: MVC(Model View Controller)模型.视图以及控制器,它是一种较为广泛应用的结构设计模式. 模型:就是在MVC设计模式中需要被显示的数据.在通常情况 ...

  9. jquery改变链接移上光标时的颜色实例

    效果体验http://hovertree.com/texiao/jquery/18/ 完整代码如下: <!DOCTYPE html> <html> <head> & ...

  10. .NET多线程总结和实例介绍

    摘要:.Net提供了许多多线程编程工具,可能是因为太多了,所以掌握起来总是有一些头疼,我在这里讲讲我总结的一些多线程编程的经验,希望对大家有帮助. 1.多线程的总结 不需要传递参数,也不需要返回参数 ...