首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux cp 时间不变

在Linux系统中,cp命令用于复制文件或目录。当你使用cp命令复制文件时,有时会发现目标文件的时间戳(访问时间、修改时间和状态改变时间)与源文件相同,而不是复制操作发生的时间。这是因为cp命令默认情况下会保留源文件的时间戳。

基础概念

  • 时间戳:在Linux中,每个文件都有三个主要的时间戳:
    • 访问时间(atime):文件最后一次被读取的时间。
    • 修改时间(mtime):文件内容最后一次被修改的时间。
    • 状态改变时间(ctime):文件的元数据(如权限、所有者等)最后一次被修改的时间。

相关优势

保留源文件的时间戳有助于保持文件的原始属性,这在某些备份和恢复场景中非常有用。

类型与应用场景

  • 默认行为cp命令默认保留源文件的时间戳。
  • 应用场景:在进行文件备份、版本控制或维护文件历史记录时,保留时间戳可以提供有用的信息。

问题原因

当你发现复制后的文件时间戳没有改变时,这是因为cp命令的默认行为是保留源文件的时间戳。

解决方法

如果你希望目标文件的时间戳反映复制操作的实际时间,可以使用-p选项来保留文件的属性(包括时间戳),或者使用--no-preserve=timestamps选项来明确指示不保留时间戳。

示例代码

代码语言:txt
复制
# 使用 -p 选项保留文件属性(包括时间戳)
cp -p source_file destination_file

# 使用 --no-preserve=timestamps 选项不保留时间戳
cp --no-preserve=timestamps source_file destination_file

具体操作

  1. 保留时间戳
  2. 保留时间戳
  3. 不保留时间戳
  4. 不保留时间戳

通过这种方式,你可以根据具体需求选择是否保留文件的时间戳。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Linux 命令 | cp

Linux 命令 cp 命令解析 Linux 命令 cp 是拷贝文件或目录的命令,一般形式如下: cp [选项] [源文件或目录] [目标文件或目录] 常用选项: -a:进行归档式复制,保留文件所有信息.../bin/bash # author: LinYi # date: 2023/6/20 # 拷贝文件 cp file1 file2 # 拷贝目录及其内容 cp -r dir1 dir2 # 进行归档式复制...,保留文件所有信息 cp -a file1 file2 # 拷贝之前先提示 cp -i file1 file2 # 显示详细的拷贝信息 cp -v file1 file2 在上述林一写的 demo...Linux 命令 cp 命令注意事项 林一再总结几点注意事项:使用 cp 命令要特别小心,因为它会覆盖目标文件或目录。 如果需要拷贝目录及其所有内容,一定要使用-r选项。...在使用-i选项时,如果不希望反复确认,也可以在开头设置变量:CP=cp -i,这样在以后的拷贝中只需要使用$CP命令即可。

91440
  • Linux 的cp命令

    覆盖文件之前先询问用户 -l 或 --link 对源文件建立硬链接,而非复制文件 -p 或 --preserve 保留源文件或目录的属性,包括所有者、所属组、权限与时间...默认的备份字尾符串是符号"~" -u 或 --update 使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在...显示在线帮助 --sparse= 设置保存希疏文件的时机 --version 显示版本 示例: .复制文件,只有源文件较目的文件的修改时间新时...file2 cp -i file1 file2 .将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式 cp -f file1 file2...file2 file3 dir1 dir2 .复制时保留文件属性 cp -p a.txt tmp/ .复制时保留文件的目录结构 cp -P /var/tmp/

    12310

    Linux终端命令——cp

    ,与同时指定 -dpR 这三个选项效果一样,用于复制整个目录,包括目录中的子目录等都递归的复制,而且还要保持文件的访问模式,所有者,时间戳等属性与原文件一样。...命令覆盖目标文件时是不会提示的,很多Linux发行版里的cp都被设置别名cp -i,其实作用就是给用户一个提醒。...不要覆盖已存在的文件(使前面的 -i 选项失效) -P, --no-dereference 不跟随源文件中的符号链接 -p 等于–preserve=模式,所有权,时间戳...–preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),如果可能保持附加属性:环境、链接、xattr 等 -c same as --preserve=context...$ cp -vr mk1.txt mk2.txt 'mk1.txt' -> 'mk2.txt' 实例3:复制文件,只有源文件较目的文件的修改时间新时,才复制文件 bennyrhys@ubuntu:~/Desktop

    32.3K30

    Linux之cp命令

    命令格式 cp [选项] 源 目的 或 cp [选项] -t 目录 源 命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录。...对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时...复制单个文件到目标目录,文件在目标文件中不存在 两个文件的时间一样 > cp 1.txt rumenz 两个文件的时间一样 > cp -a 1.txt rumenz 目标文件存在,会询问是否覆盖 >...cp 1.txt rumenz/ cp: overwrite ‘rumenz/1.txt’?...复制多个文件到某个目录 > cp -t rumenz 1.txt 2.txt 原文链接:https://rumenz.com/rumenbiji/linux-cp.html 微信公众号:入门小站

    7.4K30

    Linux之cp命令

    命令格式 cp [选项] 源 目的 或 cp [选项] -t 目录 源 命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录。...对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时...复制单个文件到目标目录,文件在目标文件中不存在 两个文件的时间一样 > cp 1.txt rumenz 两个文件的时间一样 > cp -a 1.txt rumenz 目标文件存在,会询问是否覆盖 >...cp 1.txt rumenz/ cp: overwrite ‘rumenz/1.txt’?...y 复制整个目录 > cp -a rumenz/ rumenzz 或 > cp -r rumenz/ rumenzz 目标目录存在时,整个源目录被复制到目标目录里面 复制的 1.txt 建立一个连结档

    7.3K00

    Linux之cp命令

    命令格式 cp [选项] 源 目的 或 cp [选项] -t 目录 源 命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录。...对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时...复制单个文件到目标目录,文件在目标文件中不存在 两个文件的时间一样 > cp 1.txt rumenz 两个文件的时间一样 > cp -a 1.txt rumenz 目标文件存在,会询问是否覆盖 >...cp 1.txt rumenz/ cp: overwrite ‘rumenz/1.txt’?...复制多个文件到某个目录 > cp -t rumenz 1.txt 2.txt 原文链接:https://rumenz.com/rumenbiji/linux-cp.html

    6.4K60

    Linux之cp命令

    命令格式 cp [选项] 源 目的 或 cp [选项] -t 目录 源 命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录。...对源文件建立硬连接,而非复制文件; -p:保留源文件或目录的属性; -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -s:对源文件建立符号连接,而非复制文件; -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时...复制单个文件到目标目录,文件在目标文件中不存在 两个文件的时间一样 > cp 1.txt rumenz 两个文件的时间一样 > cp -a 1.txt rumenz 目标文件存在,会询问是否覆盖 >...cp 1.txt rumenz/ cp: overwrite ‘rumenz/1.txt’?...y 复制整个目录 > cp -a rumenz/ rumenzz 或 > cp -r rumenz/ rumenzz 目标目录存在时,整个源目录被复制到目标目录里面 复制的 1.txt 建立一个连结档

    6.1K30

    Linux 的cp命令(1)

    覆盖文件之前先询问用户      -l 或 --link        对源文件建立硬链接,而非复制文件      -p 或 --preserve    保留源文件或目录的属性,包括所有者、所属组、权限与时间...默认的备份字尾符串是符号"~"      -u 或 --update      使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在...              显示在线帮助      --sparse=  设置保存希疏文件的时机      --version           显示版本 示例:     .复制文件,只有源文件较目的文件的修改时间新时...,才复制文件      cp -u -v file1 file2     .将文件file1复制成文件file2      cp file1 file2     .采用交互方式将文件file1复制成文件...file3 dir1 dir2     .复制时保留文件属性      cp -p a.txt tmp/     .复制时保留文件的目录结构      cp -P  /var/tmp/a.txt  .

    6.2K40

    Linux命令(25)——cp命令

    2.命令格式 cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]......SOURCE指定的文件到目标目录DIRECTORY; -T, --no-target-directory:没有目标目录,将目标文件DEST视为正常文件; -u,--update:使用这项参数后只会在源文件的更改时间较目标文件新时或是名称相互对应的目标文件并不存在时...cp -r dir dir2 (2)复制文件a、b、c、d到dir2。 cp a b c d dir2 (3)交互式地将目录/usr/men中的以m打头的所有.c文件复制到目录/usr/zh中。...cp -i /usr/men m*.c /usr/zh 我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。...---- 参考文献 [1]man cp [2]百度知道.cp简介

    6.4K21

    深度剖析 Linux cp 的秘密

    是的,就是 Linux 是 Linux 下最常用的命令之一,copy 的简写,小伙伴 100% 都用过。...cp 命令处于 Coreutils 库里,是 GNU 项目维护的一个核心项目,提供 Linux 上核心的命令。 今天用 cp 命令,把小伙伴惊到了,引发了我对其中细节的思考。...一个文件除了数据需要存储之外,一些元信心也需要存储,例如文件类型,权限,文件大小,创建/修改/访问时间等,这些信息存在 inode 中,每个文件唯一对应一个inode 。...这种方式则会导致源文件的 size 和目标文件一样(三种策略下,文件size 都是不变的),但是 物理 blocks 占用却更小。 never 这种方式最保守,实现也最简单。...cp 命令源码在 GNU 项目的 coreutils 项目中,为 Linux 提供外围的基础命令工具。看似极简的 cp,其实代码实现还挺有趣的。

    8.9K30

    linux每日命令(9):cp命令

    一.命令格式: cp [参数] source dest 或 cp [参数] source... directory 二.命令功能: 将源文件复制至目标文件,或将多个源文件复制至目标目录。 三....-n --no-clobber,不要覆盖已存在的文件(使前面的 -i 选项失效) -p --preserve ,除复制文件的内容外,还保留源文件或目录的属性,包括所有者、所属组、权限与修改时间也复制到新文件中...10月 31 19:18 ../ -rw-r--r-- 1 hc hc 0 10月 31 19:18 log1 加上参数 -i会询问是否覆盖,-f强制覆盖 说明: 在没有带-a参数时,两个文件的时间是不一样的...在带了-a参数时,两个文件的时间是一致的。 2....复制整个目录 命令: 复制dir3目录到dir2目录下 cp -a dir3 dir2 复制dir2目录到dir3目录下 cp -t dir2 dir3 输出: 目标目录存在时: hc@hc-virtual-machine

    9K60

    Linux系统拷贝文件cp命令

    在windows系统中常常用Ctrl+c、Ctrl+v进行文件的复制粘贴,在Linux系统中却不是用Ctrl+c、Ctrl+v进行复制粘贴而是用cp命令。...在 Linux 中,cp 命令常被用于从一个文件夹中复制文件到另一个文件夹中,最简单的语法如下:  # cp [options….] source(s) destination 另外,你也可以使用高级复制命令...5 次或者更多的cp命令么?...-n 1 - 告诉 xargs 命令每个命令行最多使用一个参数,并发送到 cp 命令中。  2.cp – 用于复制文件。  3.-v– 启用详细模式来显示更多复制细节。...你也可以阅读有关 progress 命令来帮助监控运行中的(cp、mv、dd、tar 等等)的进度。 想要成为一个Linux高手学会使用快捷命令是必不可少的。

    12.7K20

    Learning VPP: linux-cp(1)

    前段时间有哥们在vpp群里分享了基于VPP的src/plugins/linux-cp/插件复制的一个临时插件lcpng,作者做了很多方面的验证和修改,并且后期计划合入到vpp主分支上去。...lcpng简介 lcpng插件是临时插件,由vpp的插件src/plugins/linux-cp复制而来,最初是由以下作者提交的: Signed-off-by: Neale Ranns nranns@...cp插件接口及netlink同步插件进行的验证和重写,在作者的blog中记录修改记录和验证过程,使Linux cp插件更加的完善,可以将vpp配置复制到linux内核接口,也可以讲linux配置复制到...当前插件支持以下功能,具体如下: 在作者blog中《VPP Linux CP - Part7》文章中作者使用isolcpus来提升vpp性能,具体描述如下:在安装完成后,对Linux系统引导程序/etc...debug } class linux-cp/nl { rate-limit 10000 level debug syslog-level debug } } #配置lcpng lcpng {

    8K51

    Linux命令1-ls、cp、mv

    Linux命令1-ls、cp、mv 本文中介绍的3个常用命令是: ls cp mv ?...命令会列出当前目录的内容,常用参数: -a 显示所有文件及目录 (包括以“.”开头的隐藏文件) -l 使用长格式列出文件及目录信息 -r 将文件以相反次序显示(默认依英文字母次序) -t 根据最后的修改时间排序...ls -lR /bin # 列出 /bin 目录下的所有目录及文件的详细信息 [root@linuxcool ~]# ls -AS # 列出当前工作目录下所有文件及目录并以文件的大小进行排序 cp...cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录 cp命令可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。...~]# cp -r file1 file2 file3 dir 交互式地将目录 /usr/linuxcool 中的所有.c文件复制到目录 dir 中: [root@linuxcool ~]# cp -

    10.3K30
    领券