Linux - 指令 - cp & mv

一. 复制文件 - cp

语法: cp [选项] 源文件或目录 目标文件或目录

功能: 复制文件或目录.

常用选项:

· -f 强行复制文件或目录, 不论目的文件或目录是否已经存在.

· -i 覆盖文件之前先询问用户.

· -r / -R 递归处理, 将指定目录下的文件与子目录一并处理.

源对象和目标对象都是文件

当源对象和目标对象都是文件时, 且目标文件不存在时, cp 命令会将源文件复制成一个新的目标文件, 并以目标对象文件名命名, 放置于当前工作目录下. 新文件在形式上就像全新的文件一样, 有新的修改时间.

新文件 test2 和 test1 的 修改时间并不一样.

如果目标文件已经存在 , 则 cp 命令可能并不会提醒你这一点. 最好加上 -i 选项, 强制 shell 询问是否要覆盖已有文件.

如果回答 y, 则覆盖已有文件; 如果回答 n, 则停止文件复制.

源对象是文件, 目标对象是目录 (现有目录)

将文件复制到现有目录中.

如果将文件复制到的目标目录不存在 , 会产生报错信息.

提示: 先前的例子在目标目录名尾部加上了一个正斜线 ( / ) . 这表明 newidr 是一个目录而非文件. 这有助于表明目的, 而且在复制单个文件时非常重要. 如果没有使用正斜线, 同时子目录 newdir 又不存在, 就会产生麻烦. 在这种情况下, 试图将一个文件复制到 newdir 子目录反而会创建名为 newdir 的普通文件, 更是连错误消息都不会有. 因此, 记得在目标目录名尾部加上正斜线.

源对象和目标对象都是目录

cp 命令的 -R 选项功能强大. 可以用它在单个命令中递归地复制整个目录的内容.

在执行 cp -R 命令之前, 目录 dir 并不存在 . 它是随着 cp -R 命令被创建的, 整个 newdir 目录中的内容都被复制到其中. 注意, 新的 dir 目录中的所有文件都有新的日期. dir 目录现在已经成为了 newdir 目录的完整副本.

也可以在 cp 命令中使用通配符复制一组文件.

二. 文件剪切并重命名 - mv

语法: mv [选项] 源文件或目录 目标文件或目录

功能: 剪切并重命名文件或目录.

常用选项:

· -f 如果目标文件已经存在, 不会询问而直接覆盖.

· -i 若目标文件 (destination) 已经存在时, 就会询问是否覆盖.

在 Linux 中, mv 命令可以将文件和目录剪切重命名剪切并重命名.

源对象和目标对象都是文件

文件重命名.

注意, 移动文件会将文件名从 fall 更改为 fzll, 但 inode 编号和时间戳保持不变. 这是因为 mv 只影响文件名.

文件剪切并重命名.

inode 编号和时间戳同样保持不变.

源对象是文件, 目标对象是目录 (现有目录)

文件剪切.

inode 编号和时间戳同样保持不变.

源对象和目标对象都是目录

目录重命名 (目标对象目录不存在) .

目录剪切 (目标对象目录存在) , 将源对象目录剪切到目标对象目录下, 即成为目标对象目录的子目录.

目录剪切并重命名.

提示: 和 cp 命令类似, 也可以在 mv 命令中使用 -i 选项. 这样在 mv 试图覆盖已有的文件时会发出询问.

相关推荐
xuanzdhc3 小时前
Linux 基础IO
linux·运维·服务器
愚润求学3 小时前
【Linux】网络基础
linux·运维·网络
bantinghy3 小时前
Linux进程单例模式运行
linux·服务器·单例模式
小和尚同志4 小时前
29.4k!使用 1Panel 来管理你的服务器吧
linux·运维
帽儿山的枪手4 小时前
为什么Linux需要3种NAT地址转换?一探究竟
linux·网络协议·安全
shadon1789 天前
回答 如何通过inode client的SSLVPN登录之后,访问需要通过域名才能打开的服务
linux
小米里的大麦9 天前
014 Linux 2.6内核进程调度队列(了解)
linux·运维·驱动开发
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器
忘了ʷºᵇₐ9 天前
Linux系统能ping通ip但无法ping通域名的解决方法
linux·服务器·tcp/ip
浩浩测试一下9 天前
渗透测试指南(CS&&MSF):Windows 与 Linux 系统中的日志与文件痕迹清理
linux·运维·windows·安全·web安全·网络安全·系统安全