cp

复制文件,可以将一个文件复制到另外一个地方,也可以将多个文件复制到目录。

此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法

      cp  [option] [-T]  src  dst

      cp  [option] src  dir

      cp  [option] -t  dir  src

 

2、选项列表

选项

说明

--help

显示帮助文档

--version

显示命令版本

-a | --archive

等价于“-dR --preserve=all”

--backup[=CONTROL]

为每一个存在的目标文件创建备份

-b

类似“--backup”,但是没有参数

--copy-contents

递归时复制特殊文件的内容

-d

等价于“--no-dereference    --preserve=links”

-f | --force

强制执行

-i | --interactive

交互模式,覆盖文件之前询问

-H

遵循src中的命令行符号链接。

-l | --link

创建链接,不复制

-L | --dereference

始终遵循src中的符号链接

-n | --no-clobber

不覆盖已经存在的文件

-R | -r

递归模式,复制子目录

-s | --symbolic-link

创建符号链接,不复制

-P | --no-dereference

不遵循src中的符号链接

-p

等价于“--preserve=mode”

--preserve[=ATTR_LIST]

保留指定的属性(默认:模式、所有权、时间戳),如果可能的话,其他属性:上下文、链接、xattr、all

-c

等价于“--preserve=context”

--no-preserve=ATTR_LIST

不保留指定的属性

--parents

使用目录下的完整源文件名

-R | -r | --recursive

递归复制子目录

--reflink[=WHEN]

控制拷贝

--remove-destination

在尝试打开每个现有目标文件之前移动它(与“--force”相反)

--sparse=WHEN

控制稀疏文件的创建

--strip-trailing-slashes

从每个源参数中移除任何尾随斜线。

-s | --symbolic-link

创建符号链接,不复制

-S | --suffix=SUFFIX

重写通常的备份后缀

-t | --target-directory=DIRECTORY

将所有源参数复制到DIRECTORY中。

-T | --no-target-directory

将目标文件当做普通文件

-t | --target-directory=dir

复制所有的源文件到目录

-u | --update

以更新的方式复制

-v | --verbose

显示详细执行过程

-x | --one-file-system

保持在这个文件系统上

-Z | --context=CONTEXT

将副本的安全上下文设置为上下文

3、说明

当“--reflink[=always]”被指定时,执行一个轻量级副本,其中数据块仅在修改时被复制。如果这是不可能的,复制失败,或者如果“--reflink=auto “被指定,则返回到标准副本。

备份后缀为‘~’,除非设置“--suffix “或”SIMPLE_BACKUP_SUFFIX“。版本控制方法可以通过”--backup“选项或通过VERSION_CONTROL环境变量来选择。以下是这些值:

1)none, off,从不备份,即使指定了“--backup“。

2)numbered, t,数字版本控制。

3)existing, nil,如果有数字备份,那么就使用数字备份,否则使用简单备份。

4)simple, never,简单备份。

作为特例,当提供强制和备份选项时,cp对源进行备份,src和dst名字相同,都是常规文件。

4、实例

1)复制整个目录

[root@192 weijie]# cp -r test01/ test03/            //使用-r选项,递归方式复制

 [root@192 weijie]# ls test03

1.c  1.c~  2.c  3.c

2)使用“-t”选项,将多个文件复制到目录

[root@192 weijie]# cp -t test01 1.c 2.c 3.c         //复制3个文件到test01目录

cp:是否覆盖"test01/1.c"y

[root@192 weijie]# ls test01

1.c  1.c~  2.c  3.c

3)创建链接

[root@localhost wj]# cp -s 3.c 4.c                    //创建符号链接,并不是复制

[root@localhost wj]# ls -l 4.c                        //查看内容,该文件是一个符号链接

lrwxrwxrwx 1 root root 3 10 30 08:09 4.c -> 3.c

[root@localhost wj]# 

做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ  密码:n7bk

Linux基础命令---cp的更多相关文章

  1. Linux基础命令cp之拷贝隐藏文件

    创建一个用户名为test211的普通用户 [23:35:09 root@C8[ ~]#useradd test211 [23:37:37 root@C8[ ~]#getent passwd test2 ...

  2. 第四节,Linux基础命令

    第四节,Linux基础命令 命令是系统操作员对系统传入的指令,传入指令后回车,系统接收到指令做出相应的行为 1.查看用户位于系统什么位置 [pmd]检查操作用户位于系统的什么位置 命令         ...

  3. 【Python之路】第一篇--Linux基础命令

    pwd 命令 查看”当前工作目录“的完整路径 pwd -P # 显示出实际路径,而非使用连接(link)路径:pwd显示的是连接路径 .   表示当前目录 ..  表示上级目录 /  表示根目录 ls ...

  4. linux基础命令:

    linux基础命令: 显示 echo 输出我写的内容 ls 查看当前目录的文件 pwd 查看当前目录 ifconfig 查看网卡信息 grep 过滤 -v 取反 -n man 查看命令的帮助信息 md ...

  5. 常用的linux基础命令

    常用的linux基础命令 1.ls 显示目录属性 -l:(也可以简写成ll),列表显示权限等属性 -a:显示所有文件包括隐藏文件等 -d:只列出目录本身 2.chgrp 改变档案所属群组 eg:chg ...

  6. Linux基础命令-文件与目录

    Linux基础命令-文件与目录 参考:<鸟哥linux私房菜>五-七章,17/12/5复习,18/01/15复习 文件权限 rwx421:用户,用户组,其他 umask查看默认权限:000 ...

  7. Linux基础命令回顾

    前言 说到linux基础命令,网上一搜一箩筐,想学也有很多教程,如果你不幸看到此篇文章,想看就认真看完,毕竟你点进来了不是嘛? 我每次写的文章都是为了分享自己的学习成果或重要知识点,希望能帮助更多的人 ...

  8. [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)

    linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...

  9. Linux基础命令小结(超全!!)

    Linux目录结构 1.bin 存放经常使用的指令比如ll,cp 2.sbin 系统管理员使用的系统管理指令 3.home 存放普通用户的住目录 4.root 系统管理员的用户主目录 5.boot 存 ...

随机推荐

  1. Java虚拟机六 堆溢出的处理

    在Java程序中,如果堆空间不足,有可能抛出内存溢出错误:Out Of Memory,简称OOM. Exception in thread "main" java.lang.Out ...

  2. jquery如何让checkbox如何取消勾选

    1.取消勾选 $("checkbox").attr("checked", false); 2.勾选 $("checkbox").attr(& ...

  3. python---使用md5加密

    python中使用md5进行加密字符串: __author__ = 'Administrator' #-*- coding: utf-8 -*- import hashlib aa = ' #需要加密 ...

  4. 大话FLASH和EEPROM

    最近在看代码的时候,遇到了一个使用FLASH模拟EEPROM的情况,看到这个我当时是一脸蒙蔽啊,对于一个有时候连FLASH和EEPROM都分不清的人来说,怎么可能读懂用FLASH来模拟EEPROM呢? ...

  5. RabbitMQ 安装和说明

    一.安装 1. 下载源码,RabbitMQ是使用Erlang开发,所以安装RabbitMQ前需要先安装Erlang.官方推荐从源码安装Erlang,因此下面开始从源码安装OTP 17.0.下载OTP ...

  6. js跨域请求数据的3种常用的方法

    由于js同源策略的影响,当在某一域名下请求其他域名,或者同一域名,不同端口下的url时,就会变成不被允许的跨域请求.那这个时候通常怎么解决呢,对此菜鸟光头我稍作了整理:1.JavaScript   在 ...

  7. 【巷子】---Mock---基本使用

    一.mock解决的问题 开发时,后端还没完成数据输出,前端只好写静态模拟数据.数据太长了,将数据写在js文件里,完成后挨个改url.某些逻辑复杂的代码,加入或去除模拟数据时得小心翼翼.想要尽可能还原真 ...

  8. 线性DP总结(LIS,LCS,LCIS,最长子段和)

    做了一段时间的线性dp的题目是时候做一个总结 线性动态规划无非就是在一个数组上搞嘛, 首先看一个最简单的问题: 一,最长字段和 下面为状态转移方程 for(int i=2;i<=n;i++) { ...

  9. Oracle备份恢复之rman备份oracle数据库

    备份需求和rman备份 oracle数据库的备份相关问答: 1)备份时数据库处于何种状态? 备份时数据库处于OPEN状态,这样数据库可以正常工作. 2)备份的数据备份在什么地方? 备份在本地磁盘. 3 ...

  10. 它是对 ACME(automated certificate management environment) 协议的实现,只要实现了 ACME 协议的客户端都可以跟它交互。

    它是对 ACME(automated certificate management environment) 协议的实现,只要实现了 ACME 协议的客户端都可以跟它交互. https://mp.we ...