精华内容
下载资源
问答
  • 本篇文章主要介绍了Linux中拷贝 cp命令中拷贝所有的写法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
  • Linux中拷贝和移动文件

    千次阅读 2019-04-12 22:08:16
    Linux中拷贝和移动文件 命令 对应英文 作用 tree [目录名] tree 以树状图列出文件目录结构 cp 源文件 目标文件 copy 复制文件或者目录 mv 源文件 目标文件 move 移动文件或者目录 / 文件或者目录重命名 ...

    Linux中拷贝和移动文件

    命令对应英文作用
    tree [目录名]tree以树状图列出文件目录结构
    cp 源文件 目标文件copy复制文件或者目录
    mv 源文件 目标文件move移动文件或者目录 / 文件或者目录重命名

    tree

    选项含义
    -d只显示目录

    cp

    选项含义
    -i覆盖文件前进行提示
    -r若给出的源文件是目录文件,则cp。将递归该目录下的子目录和文件,目标文件必须是一个目录名

    mv

    选项含义
    -i覆盖文件前提示
    展开全文
  • Linux中拷贝 cp命令中拷贝所有的写法

    千次阅读 2016-12-30 01:17:22
    今天在编写一个脚本的时候,发现一个比较奇怪的问题:就是在使用cp拷贝当前目录下所有文件到目标目录的时候,源和目标目录大小不同。原来一直没有留意有这样的问题,后来查了些资料,才知道以前一直使用的格式有误,...
     今天在编写一个脚本的时候,发现一个比较奇怪的问题:就是在使用cp拷贝当前目录下所有文件到目标目录的时候,源和目标目录大小不同。原来一直没有留意有这样的问题,后来查了些资料,才知道以前一直使用的格式有误,
    

    一、预备
    cp就是拷贝,最简单的使用方式就是:

    cp oldfile newfile

    但这样只能拷贝文件,不能拷贝目录,所以通常用:

    cp -r old/ new/

    那就会把old目录整个拷贝到new目录下。注意,不是把old目录里面的文件拷贝到new目录,而是把old直接拷贝到new下面,结果是:

    [root@dc5 test]# ll new/
    total 4
    drwxr-xr-x  2 root root 4096 Dec 15 11:55 old

    那如果要保持源文件的所有权限,可以这样:

    cp -rp old/ new/

    -p参数,可以保持权限、宿主、时间栈,还可能包括link等;还有更简单的,就是用:

    cp -a old/new/

    -a参数,就等于-dpR。

    二、问题1
    好,我们来看看这次的问题。环境是:
    ◎两个目录:old、new,其中old里面有个三个内容:test1文件、test2目录,还有就是.test3,这是一个隐含文件。

    [root@dc5 test]# ll -laR
    .:
    total 20
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 .
    drwxrwxrwt  7 root root 4096 Dec 15 11:59 ..
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 new
    drwxr-xr-x  3 root root 4096 Dec 15 12:14 old
    
    ./new:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    
    ./old:
    total 12
    drwxr-xr-x  3 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:07 .test3
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 test2
    
    ./old/test2:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  3 root root 4096 Dec 15 12:14 ..

    ◎操作一:

    [root@dc5 test]# cp -a old/* new/
    [root@dc5 test]# ll -laR new/
    new/:
    total 12
    drwxr-xr-x  3 root root 4096 Dec 15 12:15 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 test2
    
    new/test2:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  3 root root 4096 Dec 15 12:15 ..

    问题出来了:隐含的.test3文件没有一齐拷贝到new目录下。
    原因是:参数使用不正确。这样的写法,通常都是因为熟悉了过去Dos的格式(包括我自己),而实际在bash环境下,cp使用是不能匹配类似.开头的隐含文件的。
    重点内容

    重点内容
    ◎操作二
    正确的写法应该这样:

    [root@dc5 test]# cp -a old/. new/
    [root@dc5 test]# ll -laR new/
    new/:
    total 12
    drwxr-xr-x  3 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:07 .test3
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 test2
    
    new/test2:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  3 root root 4096 Dec 15 12:14 ..

    不用*号,而用.号代替。
    还有一种比较复杂一些的写法:

    [root@dc5 test]# cp -a old/* old/.[^.]* new/
    [root@dc5 test]# ll -laR new/
    new/:
    total 12
    drwxr-xr-x  3 root root 4096 Dec 15 12:25 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:07 .test3
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 test2
    
    new/test2:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  3 root root 4096 Dec 15 12:25 ..

    请注意写法,不要写成.*了。(原因请看下面)

    三、问题2
    上面提到不要写成.,那.代表什么?

    [root@dc5 test]# echo .*
    . ..

    .*代表的是当前目录,以及上一层目录。
    所以,使用.*会导致更大的问题:

    [root@dc5 test]# cp -a old/.* new/
    cp: cannot copy a directory, `old/..', into itself, `new/'
    cp: cannot copy a directory, `old/..', into itself, `new/'
    cp: will not create hard link `new/old' to directory `new/.'
    cp: overwrite `new/.test3'? y
    [root@dc5 test]# ll -laR new/
    new/:
    total 16
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:07 .test3
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 new
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 test2
    
    new/new:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..
    -rw-r--r--  1 root root    0 Dec 15 12:07 .test3
    -rw-r--r--  1 root root    0 Dec 15 12:05 test1
    
    new/test2:
    total 8
    drwxr-xr-x  2 root root 4096 Dec 15 12:14 .
    drwxr-xr-x  4 root root 4096 Dec 15 11:55 ..

    也就是说,使用.*就等于这样了:

    [root@dc5 test]# cp -a old/. old/.. old/.test3 new/
    [root@dc5 test]# echo old/.*
    old/. old/.. old/.test3
    展开全文
  • 资源支持平台是linux,主要功能是复制 ldd 出来的库到指定的文件夹下, 主要是项目自己用,所以容错性可能不好,欢迎指正!使用方法: 编译出的程序名 + 空格 + 库或程序名+指定的路径名
  • Linux 拷贝与粘贴

    千次阅读 2017-07-26 07:55:54
    选中即为复制,点击鼠标键即为粘贴
    选中即为复制,点击鼠标中键即为粘贴
    展开全文
  • cp命令拷贝当前目录以及子目录下的所有文件 忽略当前文件的隐藏文件 cp   -r   /usr/* /test1/ 完整复制所有文件 cp   -r   /usr/. /test1/ 如果对你有帮助,请一定...

    cp命令拷贝当前目录以及子目录下的所有文件
    忽略当前文件中的隐藏文件

    cp   -r   /usr/* /test1/

    完整复制所有文件

    cp   -r   /usr/. /test1/

    如果对你有帮助,请一定要帮忙点赞好评,给予创作的动力…

    展开全文
  • Linux中的零拷贝技术

    2020-09-28 16:39:29
    Linux中的零拷贝技术,对于开发使用linux内存管理的设计开发者来说,是一本好的参考书,可以指导用户进行高效零拷贝技术开发
  • linux远程拷贝和本地拷贝

    千次阅读 2014-11-23 23:21:13
    linux远程拷贝和本地拷贝命令
  • Linux拷贝原理.pdf

    2019-07-31 12:42:24
    linux拷贝原理
  • 先了解一下linux 拷贝命令 1:命行 cp man ,如下图所示。 2:从说明大概可以知道,输入 cp -af /源目录 /目标目录就可达到覆盖拷贝的效果。但实际上并没有。如下图所示,还是有覆盖的提示。 3:网上找一了一下,...
  • 这个文件是我从网上下载jar包,结合自己需求写的从Linux服务器中拷贝文件至本地路径,适用于跨服务器系统集成需要从其他Linux服务器中拷贝文件至本服务器上,本机服务器可以是Windows也可以是Linux
  • Linux拷贝技术

    千次阅读 2019-12-31 21:19:07
    传统的 Linux 系统的标准 I/O 接口(read、write)是基于数据拷贝的,也就是数据都是 copy_to_user 或者 copy_from_user。 好处:通过中间缓存的机制,减少磁盘 I/O 的操作 坏处:大量数据的拷贝,用户态和内核态的...
  • linux拷贝技术

    2012-09-04 23:53:22
    linux拷贝技术 博客分类: LINUX 收集整理一些关于linux拷贝技术的文章,如果想高效的收集日志或者发送本地文件到网络,你需要了解这些。 1:Zero Copy I: User-Mode Perspective ...
  • 主要介绍了linux拷贝命令的高级拷贝scp命令详细使用,需要的朋友可以参考下
  • Linux远程拷贝避免软连接

    千次阅读 2018-06-25 00:05:25
    介绍 scp是最常用的Linux远程拷贝命令, 无论是拷贝单个文件还是文件夹。 但是针对存在软连接的文件夹的远程拷贝要尤为...在文件转移的过程,直接对home目录下的用户数据用scp命令远程拷贝的另外一台服务器, 结...
  • 在进行Linux文件拷贝中,文件较多的时候拷贝的速度非常慢,那么有什么办法能够加快文件拷贝的速度呢?下面小编就给大家介绍下加快Linux文件拷贝速度的方法。    第一种方法  首先,无论本地还是远程,需要...
  • 主要介绍了浅析Linux中的零拷贝技术的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 444,613
精华内容 177,845
关键字:

linux中拷贝

linux 订阅