cp - copy files and directories

拷贝文件或目标文件夹,默认不能直接拷贝目录,通过-r参数设置递归复制目录 copy

语法:
    cp [OPTION]... [-T] SOURCE DEST
    cp [OPTION]... SOURCE... DIRECTORY
    cp [OPTION]... -t DIRECTORY SOURCE...

参数:

  • -r 递归,用于复制目录
  • -a 和-dR --preserve 一样,表示all,将所有内容(目录或文件)复制,相当于-pdr
  • -p  连同档案的属性一起复制过去,而非使用默认属性;
  • -d 若源文件为链接文件link file,则复制链接文件属性而非档案本身;
  • -f 强制,若目标档案已经存在且无法开启,则移除后再尝试;
  • -i 若目标文件已经存在时,在覆盖时会先询问;
  • -u 若目标文件存在,则目标文件比源文件旧时才复制

提示:如果源文件是多个,那么目标文件在最后,且是目录。

拷贝文件覆盖不提示,直接执行的两个方法:\cp 或/bin/cp

通过\cp可以屏蔽cp的alias(别名)功能。因为alias cp='cp-i',通过'\'屏蔽'-i'再次询问功能。

cp命令默认是不会提示overwrite的,但是cp的-i选项会提示,而一般Linux的用户环境文件~/.bashrc中会把cp命名为alias cp='cp -i'。

这样在Linux下输入cp命令实际上运行的是cp -i,加上一个“\”符号或者写cp全路径/bin/cp就是让此次的cp命令不适用别名(cp -i)运行。

[root@oldboy tmp]# cat /tmp/test.txt
1 2 3 4
[root@oldboy tmp]# \cp /mnt/test.txt /tmp/test.txt # 取消提醒,直接复制(覆盖原文件内容)
[root@oldboy tmp]# cat /tmp/test.txt
this is a test file
Done

使用/bin/cp就是使用**全路径**,而不使用“别名alias”

[root@oldboy tmp]# echo "append a line">>/mnt/test.txt
[root@oldboy tmp]# cat /mnt/test.txt
this is a test file
Done
append a line
[root@oldboy tmp]# /bin/cp /mnt/test.txt /tmp/test.txt
[root@oldboy tmp]# cat /tmp/test.txt
this is a test file
Done
append a line

提示:具体的别名,可以通过alias命令查看

文件备份的一般做法:
  cp /etc/ssh/sshd_config{,.ori}

这个命令经过bash解析就会变成:
  cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ori

所以,这两种表达方式是等价的。

A{B,C} 经由 bash 解析会变成 AB AC。

如: 复制 目录dir1,另存为 dir10。这种用大括号{}和逗号分隔的表达方式
  cp -a dir{1,10}

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

  1. 每天一个命令-cp 命令

    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下.cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文 ...

  2. Linux常见目录及命令介绍

    一.Linux中常用的目录介绍:     /        -根目录     /bin    -命令保存目录(普通用户亦可读取的命令)     /boot    -启动目录,启动相关文件     /d ...

  3. linux 常见名词及命令(三)

    tar 用于对文件打包压缩或解压. 示例: 打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名 解压并展开压缩包:tar -zxvf 压缩包名.tar.gz -c 创建压缩文件 -x ...

  4. linux命令之------which命令/cp命令/Head及tail命令/grep命令/pwd命令/cd命令/df命令/mkdir命令/mount及umount命令/ls命令/history命令/ifconfig命令/ping命令/useradd命令/命令passwd/kill命令/su命令/clear命令/ssh命令/tar解压缩/远程拷贝scp

    which命令 1)    作用:搜索某个系统命令的位置. 2)    案例:查询vi命令路径:which vi cp命令 1)作用:用于复制文件或目录: 2)-a:此选项通常使用在复制目录时使用,它 ...

  5. 每天一个Linux常用命令 cp命令

    Linux cp命令主要用于复制文件或目录 -a:此选项通常在复制目录时使用,它保留链接.文件属性,并复制目录下的所有内容.其作用等于dpR参数组合. -d:复制时保留链接.这里所说的链接相当于Win ...

  6. 动手实现linux中的cp命令(可自行拓展)

    我们在学习系统编程的时候,一定会有这样的经历,让你动手实现一个简单的cp命令,也就是拷贝相应的文件到对应的目录,或者说是复制吧,当然,实现非常的简单,我们来看看源码吧: #include <st ...

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

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

  8. Linux下远程cp命令scp

    2014-2.19  PS1.在用此命令cpLinux与Linux之间的数据时发现有些服务器上默认没有安装scp但用yum -y install scp提示么有这样的包 后来发现原来scp工具的安装包 ...

  9. Linux常见的Shell命令

    1.具体的shell命令用法可以通过help或man命令进入手册来查询其具体的用法.2.终端本质上对应着linux上的/dev/tty设备,linux的多用户登录就是通过不同的/dev/tty设备完成 ...

  10. 性能工具之linux常见日志统计分析命令

    引言 我前几天写过的性能工具之linux三剑客awk.grep.sed详解,我们已经详细介绍 linux 三剑客的基本使用,接下来我们看看具体在性能测试领域的运用,本文主要介绍的是在 Tomcat 和 ...

随机推荐

  1. Three中的动画实现-[three.js]

    Table Of Content 动画原理 js中动画实现原理setInterval js中动画实现新方法requestAnimationFrame 一个示例 动画原理 动画的本质实际上就是快速地不断 ...

  2. 记python 链式比较的坑

    前两天,python交流群里有人问: “x”<"y"==True 这个表达式输出的是什么,脑子都没动,就觉得应该是True 居然被否定了!立马在命令行里敲了一下,准备用事实打 ...

  3. Nginx知多少系列之(二)安装

    目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...

  4. 【数据库】MySQL数据库(一)

    一.MySQL数据库系统 MySQL数据库系统就是用来对数据库.数据的一些管理 二.数据库系统 1.数据库 就是用来存储各种数据的 2.数据库管理系统 就是用来管理各种数据库的数据的一个系统 三.常见 ...

  5. VUE_shop(第十天)项目的打包优化

    项目的打包优化 1.添加页面的加载效果 1.首先安装运行依赖nprocess,在main.js文件中的axios拦截器拦截请求的时候调用Npeocees.start. 在拦截响应的时候调用nproce ...

  6. Eclipse(Eclipse for android)代码自动提示设置

    java代码和xml资源代码在有的eclipse中可以自己提示,但有的并不支持这个功能,还得我们人为去调整,主要原因是因为你们下载的elipse的渠道不同,获得的版本有的官方原版,有的是个人备份版等等 ...

  7. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(七)之Access Control

    Access control ( or implementation hiding) is about "not getting it right the first time." ...

  8. 知识点一:OSI模型初识

    OSI(开放系统)模型是一组协议的集合,它使得两个不同的系统之间能够互相通信,分为七层 第一层:物理层 物理层负责把逐个的比特(01)从一个节点移动到下个节点 具体体现在如何把比特转换成电或者光信号. ...

  9. CVE-2018-12613 的一些思考

    复现 CVE-2018-12613 的一些思考,关于文件包含路径的问题 漏洞 /index.php 第 55 行 $target_blacklist = array ( 'import.php', ' ...

  10. jmeter if控制器使用

    if控制器有两种用法 1.不勾选“interpret condition as variable expression” 直接输入我们需要判断的表达式即可,判断表达式为真时,执行if控制器下的请求 2 ...