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 试图覆盖已有的文件时会发出询问.

相关推荐
Rabitebla2 小时前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio
Android系统攻城狮7 小时前
Linux FFmpeg深度解析之avcodec_default_get_encode_buffer调用流程与实战(二十八)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频
程序员初一7 小时前
8080 打不开的四层定位:监听地址、ufw、DOCKER 链、安全组
linux·ssh
程序开发阿元7 小时前
swappiness 60 和 10 差在哪:一台 1C1G 的三轮对比
linux·ssh
无足鸟ICT7 小时前
【RHCA+】mpstat命令(监控CPU)
linux
GeW9 小时前
新质生产力Linux和数据库为啥这么关键
linux
番茄啊9 小时前
linux 开启xftp连接
linux·运维·服务器
CodeYp20199 小时前
第1讲:Linux 基础指令
linux·指令
李松桃10 小时前
基于端口号的服务配置
linux·nginx-核心模块配置
CodeYp201914 小时前
第14讲:mmap 实现文件 LRU 缓存
linux·lru·mmap