用途

cp除了复制功能之外还可以建立快捷方式

全称

cp的全称为copy

参数

-a :相当于同时指定参数pdr

-d :若文件为链接文件的属性(link file),则复制链接文件属性而非档案本身

-f :强制的意思(force),若目标档案已经存在且无法开启,则移除后再尝试一次

-i :若目标文件存在,在覆盖的时会先询问动作的进行

-l :进行硬式连结的接档链接,而非复制档案本身

-p :连同档案的默认属性一起复制,而非使用默认属性

-r :递归持续复制,用于目录的复制行为

-s :复制成为符号链接文件,即快捷方式

-u :若destination比source旧才更新

案例

范例一:用root身份,将家目录下的.bashrc复制到/tmp目下,并且修改名称为bashrc,并且使用i参数

[root@bigdata ~]# cp .bashrc /tmp/bashrc 将家目录下的.bashrc复制到/tmp目下,并且修改名称为bashrc

[root@bigdata ~]# cp -i .bashrc /tmp/bashrc
cp:是否覆盖"/tmp/bashrc"? n为不覆盖,y为覆盖

范例二:变换目录到/tmp下,并将/etc/host.conf文件复制到该目录下

复制前:

[root@bigdata tmp]# ls -l /var/log/btmp 查看文件属性
-rw-------. 1 root utmp 768 8月   6 21:52 /var/log/btmp

复制 :

[root@bigdata tmp]# cp /var/log/btmp . 复制文件btmp到当前目录

复制后:

[root@bigdata tmp]# ls -l btmp 查看复制的文件属性
-rw-------. 1 root root 768 8月   7 22:21 btmp

我们从绿色标记部分可以看出,明显变化

添加参数复制:

[root@bigdata tmp]# cp -a /var/log/btmp .
cp:是否覆盖"./btmp"? y

[root@bigdata tmp]# ls -l btmp
-rw-------. 1 root utmp 768 8月   6 21:52 btmp

范例三:复制/etc/这个目录下的所有内容到/tmp底下

[root@bigdata tmp]# cp /etc /tmp
cp: 略过目录"/etc"

出现这种情况就需要加参数r来进行复制

[root@bigdata tmp]# cp -r /etc /tmp 也可以使用a参数(cp -a /etc /tmp

范例四:建立一个连接档(快捷方式)

[root@bigdata tmp]# cp -s bashrc bashrc_link
[root@bigdata tmp]#
ls -l bashrc*
-rw-r--r--. 1 root root 176 8月   7 22:08 bashrc
lrwxrwxrwx. 1 root root   6 8月   7 22:39 bashrc_link –> bashrc bashrc_link为快捷方式

范例五:若~/.bashrc比tmp/barshrc新才复制过来

[root@bigdata tmp]# cp -u ~/.bashrc /tmp/bashrc

范例六:通过复制快捷方式来查看d参数作用

[root@bigdata tmp]# cp bashrc_link bashrc_link1 一般复制,不加参数d,则复制了源文件
[root@bigdata tmp]# cp -d bashrc_link bashrc_link2 复制了快捷方式
[root@bigdata tmp]# ls -l bashrc*
-rw-r--r--. 1 root root 176 8月   7 22:08 bashrc
lrwxrwxrwx. 1 root root   6 8月   7 22:39 bashrc_link -> bashrc
-rw-r--r--. 1 root root 176 8月   7 22:47 bashrc_link1
lrwxrwxrwx. 1 root root   6 8月   7 22:47 bashrc_link2 -> bashrc

范例七:多个数据文件复制到同一个目录

例如现在目录tmp下存在文件1.txt,2.txt,3.txt(3个文件均为文空件)

[root@bigdata tmp]# cp /tmp/1.txt /tmp/2.txt /tmp/3.txt /usr/local/sbin/
[root@bigdata tmp]#
cd /usr/local/sbin/
[root@bigdata sbin]# ll
总用量

-rw-r--r--. 1 root root         0 8月   7 22:53 1.txt
-rw-r--r--. 1 root root         0 8月   7 22:53 2.txt
-rw-r--r--. 1 root root         0 8月   7 22:53 3.txt

我们可以看到已经成功复制文件

【Linux】cp命令的更多相关文章

  1. Linux cp命令使用说明

    Linux cp命令使用说明 --功能说明:复制目录或文件 --命令格式:cp  [参数]  <文件或目录>  <文件或目录> --常用参数: -R 复制目录 -i 覆盖文件之 ...

  2. Linux cp命令详解

    Linux cp命令 Linux cp命令主要用于复制文件或目录,将源文件复制至目标文件,或将多个源文件复制至目标目录 用法: cp [选项]... [-T] 源文件 目标文件 cp [选项]... ...

  3. 【初级】linux cp 命令详解及使用方法实战

    cp:复制文件或者目录 前言: cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不 ...

  4. linux cp命令参数及用法详解

    cp (复制档案或目录)[root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options] ...

  5. 浅谈Linux cp命令

    Linux 的cp命令 功能: 复制文件或目录说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中.若 ...

  6. 复制档案或目录 linux cp命令详解

    cp (复制档案或目录) [root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options ...

  7. Linux cp命令

    cp命令(copy),用来对一个或多个文件,目录进行拷贝 1.语法 cp [选项] [参数] 2.命令选项 -b 当文件存在时,覆盖前,为其创建一个备份-d 当复制软连接时,把目标文件或目录也建立为软 ...

  8. LINUX CP命令直接覆盖不提示按Y/N的方法

    refer to: https://blog.csdn.net/qq_36741436/article/details/78732201 cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当文件比 ...

  9. Linux.cp命令总提示是否覆盖

    执行cp命令,其实是默认执行了cp -i命令的别名,因此总提示是否覆盖. 修改~/.bashrc,注释“alias cp='cp -i'”即可. [root@xxxx test]# vi ~/.bas ...

  10. linux cp 命令详解

    /home/lee#cp --help 用法:cp [选项]... 来源 目的地 或:cp [选项]... 来源... 目录 或:cp [选项]... --target-directory=目录 来源 ...

随机推荐

  1. bzoj 1143: [CTSC2008]祭祀river / 2718: [Violet 4]毕业旅行 -- 二分图匹配

    1143: [CTSC2008]祭祀river Time Limit: 10 Sec  Memory Limit: 162 MB Description 在遥远的东方,有一个神秘的民族,自称Y族.他们 ...

  2. [转]Android网格视图(GridView)

    GridView的一些属性: 1.android:numColumns=”auto_fit”   //GridView的列数设置为自动,也可以设置成2.3.4…… 2.android:columnWi ...

  3. Windows系统默认调试器设置

    Windows系统默认调试器设置 1.使用运行打开drwtsn32 -i 注册华生医生到注册表如图: 2.使用运行打开drwtsn32可以进行一些常用的设置如图: 3. 注册表设置: HKEY_LOC ...

  4. Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

    我的解决方案 一开始,我是依照某本教材,配置了User Libraries(名为struts-2.2.3, 可供多个项目多次使用), 然后直接把struts-2.2.3引入过来(这个包不会真正的放在项 ...

  5. 源码管理--llorch的Visual Studio基本教程(四)

    通用的演示样例说明: 本系列博客仅仅讨论工具的基础,不讨论不论什么语言. 甚至不讨论快捷键:-) 能够用鼠标就完毕本教程 IDE默认指代的是Visual Studio 2013 Community E ...

  6. js继承——到继承结束

    说到继承,其它语言里可能有两种: 接口继承是继承方法签名,而实现继承则继承实际方法.ES函数没有签名,不能实现接口继承,只支持实现继承,而实现继承主要依靠原型链.(这两句话,说来轻松,理解来不易,且行 ...

  7. Windows平台下如何使用Android NDK

    鉴于有些同学想要学习NDK,但在网上很难找到一个讲解比较清楚.按照步骤操作可以比较顺利学会NDK的文章,所以写了此篇教程. 一.学习本篇教程需要具备的条件: 1. 了解JAVA中JNI的概念.好处以及 ...

  8. Andorid之Annotation框架初使用(六)

    EVENT @Click :点击事件,只能有0个或1个参数,且参数为View @Click(R.id.myButton) void myButtonWasClicked() { [...] } @Cl ...

  9. 海思hi3518 移植live555 实现H264的RTSP播放

    用海思的交叉编译工具交叉编译live555 ,结合海思例子venc中的H264部分,完成RTSP的视频数据发布. 用vlc可以播放,但是实时性比较差,慢了5秒

  10. Mysql命令和mysqldump的一些操作

    mysql -h localhost -P5100 -ua -pb -e 'use xxx; SELECT * FROM `order_info` WHERE pay_time >= 14726 ...