首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当您复制与目标目录结构相同的源目录时,linux复制命令是如何工作的?

当您复制与目标目录结构相同的源目录时,linux复制命令是如何工作的?
EN

Unix & Linux用户
提问于 2020-05-26 02:06:59
回答 1查看 148关注 0票数 1

假设我有一个具有以下目录结构的源目录:

代码语言:javascript
运行
复制
+-- rootfs
|   +-- bin
|   |   +-- cat
|   |   +-- chmod
|   |   +-- cp
|   |   +-- ls
|   |   +-- echo
|   |   +-- grep
|   +-- usr
|   |   +-- bin
|   |   |   +-- a
|   |   |   +-- b
|   |   |   +-- c
|   +-- lib
|   |   +-- libc.so.6
|   |   +-- libssl.so.0.9.8
|   |   +-- libcrypto.so.1.0.0
|   +-- tmp
|   +-- mnt

第二级的所有文件都是目录(bin,usr,lib,mnt,tmp)

我需要把这个目录复制到我的目的地。所以,我知道:

代码语言:javascript
运行
复制
cp -r /path/to/source/rootfs /path/to/destination/

现在,假设我从其他地方将两个新文件复制到这个目录结构(目标中),所以现在看起来如下

代码语言:javascript
运行
复制
+-- rootfs
|   +-- bin
|   |   +-- cat
|   |   +-- chmod
|   |   +-- cp
|   |   +-- ls
|   |   +-- echo
|   |   +-- grep
|   |   +-- **mke2fs**
|   |   +-- **e2fsck**
|   +-- usr
|   |   +-- bin
|   |   |   +-- a
|   |   |   +-- b
|   |   |   +-- c
|   +-- lib
|   |   +-- libc.so.6
|   |   +-- libssl.so.0.9.8
|   |   +-- libcrypto.so.1.0.0
|   |   +-- **libm.so.6**
|   |   +-- **librt.so.1**
|   +-- tmp
|   +-- mnt

此时,如果我再次将源目录复制到目标目录,我在目标文件夹中创建的新文件将保持原样。

代码语言:javascript
运行
复制
cp -r /path/to/source/rootfs /path/to/destination

源目录中所有文件的修改时间已经更新到第二份副本的时间,这是有意义的。

bin目录的修改时间被更新到第二次复制的时间,而lib目录的修改时间不是,但我并没有真正得到,因为这两个目录都有新的文件。

这让我想知道linux复制命令是如何工作的,以及它如何更新文件夹的修改时间?

EN

回答 1

Unix & Linux用户

发布于 2020-05-26 02:56:20

cp -r更改目录mtime的唯一原因是目标目录中缺少源目录中的文件。

你可以检查发生了什么

代码语言:javascript
运行
复制
cp -ruv /path/to/source/rootfs/. /path/to/destination
票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/588949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档