Linux :: 【基础指令篇 :: 文件及目录操作:(8)】:: mv:修改文件名 及 指定文件或目录移动(剪切)指令
前言:本篇是 Linux 基本操作篇章的内容!
笔者使用的环境是基于腾讯云服务器:CentOS 7.6 64bit。
学习集:
目录索引:
1. 基本语法及功能
2. 常用可选项说明
3. 文件剪切操作
- - 3.1 指定目录下文件(上级目录) => 当前所在目录
- - 3.2 指定目录 => 指定目录
- - 3.3 拷贝指定文件到上级目录
4. 目录剪切操作
5. 文件/目录重命名【含写法格式】
- - 5.1 文件重命名
- - 5.2 目录重命名
6. 相关文章或系列推荐
1. 基本语法及功能
mv 命令是 move 的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。
语法:
- mv [选项] 源文件或目录 目标文件或目录
- 注:必须指定目标文件或目录
功能:
- 视 mv 命令中第二个参数类型的不同(是目标文件还是目标目录),mv 命令将文件重命名或将其移至一个新的目录中。
- 当第二个参数类型是文件时,mv 命令完成文件重命名,此时,源文件只能有一个(也可以是源目名),它将所给的源文件或目录重命名为给定的目标文件名。
- 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv 命令将各参数指定的源文件均移至目标目录中。
2. 常用可选项说明
- -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
- -i 或 --interactive 覆盖文件之前先询问用户
- -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
- -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
3. 常用选项及测试
3.1 指定目录下文件(上级目录) => 当前所在目录
/* 查看当前操作所在目录内容 */
[Mortal@VM-12-16-centos ~]$ ls
copy.txt StudyingOrder_Linux test1 test2 test3 test_cp test_mkdir
/* 创建并进入测试目录 */
[Mortal@VM-12-16-centos ~]$ mkdir test_mv
[Mortal@VM-12-16-centos ~]$ cd test_mv
/* 剪切上级目录中的 copy.txt 到 当前目录 */
[Mortal@VM-12-16-centos test_mv]$ mv ../copy.txt .
/* 查看当前操作所在目录内容 */
[Mortal@VM-12-16-centos test_mv]$ ls
copy.txt
/* 查看上级目录内容 */
[Mortal@VM-12-16-centos test_mv]$ ls ..
StudyingOrder_Linux test1 test2 test3 test_cp test_mkdir test_mv
3.2 指定目录 => 指定目录
[Mortal@VM-12-16-centos test_mv]$ ls ..
StudyingOrder_Linux test1 test2 test3 test_cp test_mkdir test_mv
[Mortal@VM-12-16-centos test_mv]$ ls
copy.txt
/* 递归创建多级目录 */
[Mortal@VM-12-16-centos test_mv]$ mkdir -p a/aa/aaa
/* 查看目录树结构 */
[Mortal@VM-12-16-centos test_mv]$ tree .
.
|-- a
| `-- aa
| `-- aaa
`-- copy.txt
3 directories, 1 file
/* 指定目录 => 指定目录 */
[Mortal@VM-12-16-centos test_mv]$ mv copy.txt a/aa/aaa
/* 查看目录树结构 */
[Mortal@VM-12-16-centos test_mv]$ tree .
.
`-- a
`-- aa
`-- aaa
`-- copy.txt
3 directories, 1 file
3.3 拷贝指定文件到上级目录
/* 查看当前所在路径 */
[Mortal@VM-12-16-centos test_cp]$ pwd
/home/Mortal/test_cp
/* 执行操作: */
[Mortal@VM-12-16-centos test_cp]$ cp origin_dir/test_origin.txt ../copy.txt
/* 返回上级并查看目录: */
[Mortal@VM-12-16-centos test_cp]$ cd ..
[Mortal@VM-12-16-centos ~]$ pwd
/home/Mortal
/* 查看是否存在拷贝文件 */
[Mortal@VM-12-16-centos ~]$ ls
copy.txt(这) StudyingOrder_Linux test1 test2 test3 test_cp test_mkdir
4. 目录剪切操作
目录的剪切只直接操作,无需考虑是否为空等问题!
[Mortal@VM-12-16-centos test_mv]$ mv a/aa/aaa .
[Mortal@VM-12-16-centos test_mv]$ tree .
.
|-- a
| `-- aa
`-- aaa
`-- copy.txt
3 directories, 1 file
5. 文件/目录重命名【含写法格式】
5.1 文件重命名
结论:不能直接拷贝目录!
语法格式:mv + [指目录]文件名 + [指目录](new)文件名
[Mortal@VM-12-16-centos test_mv]$ touch test_nane.txt
[Mortal@VM-12-16-centos test_mv]$ mv test_nane.txt test_new_name.txt
[Mortal@VM-12-16-centos test_mv]$ ls
a aaa test_new_name.txt
5.2 目录重命名
语法格式:mv + [指目录]目录名 + [指目录](new)目录名
/* 简单修改 */
[Mortal@VM-12-16-centos test_mv]$ ls
a aaa test_new_name.txt
[Mortal@VM-12-16-centos test_mv]$ mv aaa newaaa
[Mortal@VM-12-16-centos test_mv]$ ls
a newaaa test_new_name.txt
/* 查看目录树结构 */
[Mortal@VM-12-16-centos test_mv]$ tree .
.
|-- a
| `-- aa
|-- newaaa
| `-- copy.txt
`-- test_new_name.txt
3 directories, 2 files
/* 修改指定目录下的目录名 */
[Mortal@VM-12-16-centos test_mv]$ mv a/aa a/bb
/* 查看目录树结构 */
[Mortal@VM-12-16-centos test_mv]$ tree .
.
|-- a
| `-- bb
|-- newaaa
| `-- copy.txt
`-- test_new_name.txt
3 directories, 2 files
6. 相关文章或系列推荐
2. Linux :: 【基础指令篇 :: 文件及目录操作:(4)】:: mkdir :: 创建目录:指定路径单个目录创建及一次性创建多级目录 ;
3. Linux :: 【基础指令篇 :: 文件及目录操作:(5)】:: touch:创建普通文件、修改文件创建时间及其他基本操作;
4. Linux :: 【基础指令篇 :: 文件及目录操作:(6)】:: rmidr / rm:删除空目录、删除非空目录及删除文件指令;
5. Linux :: 【基础指令篇 :: 文件及目录操作:(7)】:: cp:指定文件或目录的拷贝及指定拷贝到指定路径(与重命名);
更多推荐
所有评论(0)