文件及目录操作 - mkdir、mv

1、mkdir:创建目录

mkdir命令的功能说明

mkdir命令用于创建目录,默认情况下,要创建的目录已存在,会提示文件存在,不会继续创建目录。

mkdir命令的语法格式

mkdir [OPTION]... DIRECTORY...
mkdir [参数选项] [目录]

mkdir命令的选项说明

mkfir 选项就几个,表1为 mkdir 命令的参数及说明:

表1: mkdir命令的参数及说明

参数选项 解释说明(带*的为重点)
-p 递归创建目录,如果目录事先存在,也不会报错*
-m 设置新创建的目录的默认目录对应的权限
-v 显示创建的过程

mkdir命令的实践操作

范例1: 不使用任何参数创建目录

[root@oldboyedu  ~]# cd /data/
[root@oldboyedu  /data]# tree -d          <-->没有任何目录
.

0 directories
[root@oldboyedu  /data]# mkdir test      <-->创建一个test目录
[root@oldboyedu  /data]# tree -d            <-->再次查看,发现已经创建好了
.
└── test

1 directory
[root@oldboyedu  /data]# mkdir test       <-->再创建一次,提醒已经存在
mkdir: cannot create directory ‘test’: File exists

范例2: 使用 -p 参数递归创建目录

[root@oldboyedu  /data]# mkdir oldboy/oldgirl         <-->创建oldboy下的oldgirl,业务没有oldboy,所以报错
mkdir: cannot create directory ‘oldboy/oldgirl’: No such file or directory
[root@oldboyedu  /data]# mkdir -p oldboy/oldgirl     <-->使用 -p 参数,就可以创建了
[root@oldboyedu  /data]# tree -d                                 <-->查看结果(也可先创建oldboy,在创建oldgirl,不推荐)
.
├── oldboy
│   └── oldgirl
└── test

3 directories

范例3:-v 参数显示创建目录的过程(没什么实际用途)

[root@oldboyedu  /data]# mkdir -pv oldboy2/test
mkdir: created directory ‘oldboy2’
mkdir: created directory ‘oldboy2/test’

范例3: 创建目录时可使用 -m参数设置目录的默认权限

[root@oldboyedu  /data]# mkdir dir1
[root@oldboyedu  /data]# ls -ld dir1/
drwxr-xr-x 2 root root 6 Apr  6 17:23 dir1/     <-->目录的默认权限是755
[root@oldboyedu  /data]# mkdir -m 333 dir2
[root@oldboyedu  /data]# ls -ld dir2
d-wx-wx-wx 2 root root 6 Apr  6 17:23 dir2    <-->权限已经发生变法了

2、mv:移动或重命名文件

mv命令的功能说明

mv命令用于移动或重命名文件。

mv命令的语法格式

mv [OPTION]... SOURCE... DIRECTORY
mv [参数选项] [源文件或目录] [目标文件或目录]

mv命令的选项说明

mv 选项就几个,表1为 mv 命令的参数及说明:

表1: mv命令的参数及说明

参数选项 解释说明(带*的为重点)
-f 若目标文件已经存在,不会询问是否覆盖
-i 若目标文件已经存在,就会询问是否覆盖
-n 不覆盖已经存在的文件
-t 指定mv的目标目录,此时目标目录在前,源文件在后
-u 在源文件比目标文件新,或目标文件不存在时才移动

mv命令的实践操作

范例1: 给文件改名字

[root@oldboyedu  /test]# ls
dir1  dir2  dir3  file1.txt  file2.txt  file3.txt
[root@oldboyedu  /test]# mv file3.txt file4.txt   <-->若目标文件不存在,重命名
[root@oldboyedu  /test]# ls
dir1  dir2  dir3  file1.txt  file2.txt  file4.txt
[root@oldboyedu  /test]# mv file2.txt file4.txt   <-->若目标文件存在,则会提示
mv: overwrite ‘file4.txt’? y                               <-->y表示确认,n表示不同意
[root@oldboyedu  /test]# alias mv                     <-->之所以会提示,是因为系统做了别名
alias mv='mv -i'
[root@oldboyedu  /test]# ls
dir1  dir2  dir3  file1.txt  file4.txt
[root@oldboyedu  /test]# \mv file1.txt file4.txt   <-->取消别名的方法
[root@oldboyedu  /test]# ls
dir1  dir2  dir3  file4.txt

范例2: 移动文件

移动单个文件

[root@oldboyedu  /test]# ls dir1/
sub1
[root@oldboyedu  /test]# mv file4.txt dir1/
[root@oldboyedu  /test]# ls dir1/
file4.txt  sub1

移动多个文件

[root@oldboyedu  /test]# ls dir1/
file4.txt  sub1
[root@oldboyedu  /test]# ls
dir1  dir2  dir3
[root@oldboyedu  /test]# touch file1.txt file2.txt
[root@oldboyedu  /test]# mv file1.txt file2.txt dir1/
[root@oldboyedu  /test]# ls dir1/
file1.txt  file2.txt  file4.txt  sub1

范例3: 将源文件和目标文件调换移动文件到目录(-t参数)

[root@oldboyedu  /test]# ls
dir1  dir2  dir3
[root@oldboyedu  /test]# ls dir1/
file1.txt  file2.txt  file4.txt  sub1
[root@oldboyedu  /test]# mv dir1/file* .                                     <-->还原实验环境
[root@oldboyedu  /test]# ls dir1/
sub1
[root@oldboyedu  /test]# mv -t dir1/ file1.txt file2.txt file4.txt   <-->源文件和目标文件调换
[root@oldboyedu  /test]# ls dir1/
file1.txt  file2.txt  file4.txt  sub1
[root@oldboyedu  /test]# ls
dir1  dir2  dir3
[root@oldboyedu  /test]# 

范例3: 移动目录

[root@oldboyedu  /test]# ls
dir1  dir2  dir3
[root@oldboyedu  /test]# mv dir1 dir4      <-->目录dir4不存在,重命名
[root@oldboyedu  /test]# ls
dir2  dir3  dir4
[root@oldboyedu  /test]# ls dir4
file1.txt  file2.txt  file4.txt  sub1
[root@oldboyedu  /test]# mv dir2 dir4      <-->目录dir4存在,移动
[root@oldboyedu  /test]# ls dir4
dir2  file1.txt  file2.txt  file4.txt  sub1
[root@oldboyedu  /test]# mv dir3 dir4
[root@oldboyedu  /test]# ls
dir4
[root@oldboyedu  /test]# ls dir4/
dir2  dir3  file1.txt  file2.txt  file4.txt  sub1

今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津

Shell命令-文件及目录操作之mkdir、mv的更多相关文章

  1. Shell命令-文件及目录操作之ls、cd

    文件及目录操作 - ls.cd 1.ls:列出目录的内容及其内容属性信息 ls命令的功能说明 ls命令用于列出目录的内容及其内容属性信息. ls命令的语法格式 ls [OPTION]... [FILE ...

  2. Shell命令-文件及目录操作之pwd、rm

    文件及目录操作 - pwd.rm 1.pwd:显示当前所在位置信息 pwd命令的功能说明 pwd命令用于显示当前工作目录的绝对路径,以便在各个目录间来回切换. pwd命令的语法格式 pwd [OPTI ...

  3. Shell命令-文件及目录操作之touch、tree

    文件及目录操作 - touch.tree 1.touch:创建文件或更改文件时间戳 touch命令的功能说明 touch命令用于创建新的空文件或改变已有文件的时间戳属性. touch命令的语法格式 t ...

  4. Shell命令-文件及目录操作之file、md5sum

    文件及目录操作 - file.md5sum 1. file:显示文件的类型 file命令的功能说明 用于辨识文件类型.通过 file 指令,我们得以辨识该文件的类型. file命令的语法格式 file ...

  5. Shell命令-文件及目录操作之cp、find

    文件及目录操作 - cp.find 1.cp:复制文件或目录 cp命令的功能说明 cp命令用于复制文件或目录. cp命令的语法格式 cp [OPTION]... SOURCE... DIRECTORY ...

  6. Shell命令-文件及目录操作之chattr、lsattr

    文件及目录操作 - chattr.lsattr 1. chattr:改变文件属性 chattr命令的功能说明 chattr命令用于改变文件属性.这项指令可改变存放在ext2文件系统上的文件或目录属性, ...

  7. Linux操作系统常用命令合集——第一篇-文件和目录操作(40个命令)

    一.选项和参数的区别        在经过上一次的系统安装后我们已经成功登陆,登陆LInux后,我们就可以在#或$符后面去输入命令,有的时候命令后面还会跟着“选项”(英文名:options)或“参数” ...

  8. Python中的文件和目录操作实现

    Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...

  9. 『学了就忘』Linux基础命令 — 19、目录操作的相关命令

    目录 1.ls命令 2.cd命令 (1)绝对路径和相对路径 (2)cd命令的简化用法 3.pwd命令 4.mkdir命令 5.rmdir命令 常用目录操作的相关命令: ls命令 cd命令 pwd命令 ...

随机推荐

  1. [Go] 并发和并行的区别

    并发和并行的区别:1.并行是让不同的代码片段同时在不同的物理机器上运行,并行的关键是在不同的物理机器上同时运行 2.并发是同时管理很多事情,比如在一个物理机器上进行不停的调度,有些事情可能只做了一半就 ...

  2. Qt Creator的下载和安装

    原文:https://blog.csdn.net/weixin_38090427/article/details/83827678 一,Qt和Qt Creator的区别 Qt是C++的一个库,或者说是 ...

  3. 【Javaweb】poi实现通过上传excel表格批量导入数据到数据库

    1.导入poi相关jar包 对于只操作2003及以前版本的excel,只需要导入poi-XXX.jar ,如果还需要对2007及以后版本进行操作,则需要导入 poi-ooxml-XXX.jar poi ...

  4. JavaScript 函数闭包

    在函数中定义函数,这些定义的内部函数可以访问它们所在的外部函数中所有局部变量.参数以及声明的其它内部函数.当这样的内部函数在包含它们的外部函数之外被调用时就会形成闭包. 在没有class机制只有函数的 ...

  5. C++ 11 创建和使用共享 weak_ptr

    1.为什么需要weak_ptr? 在正式介绍weak_ptr之前,我们先来回忆一下shared_ptr的一些知识.我们知道shared_ptr是采用引用计数的智能指针,多个shared_ptr实例可以 ...

  6. gitbook 入门教程之常用命令详解

    不论是 gitbook-cli 命令行还是 gitbook editor 编辑器都离不开 gitbook 命令的操作使用,所以再次了解下常用命令. 注意 gitbook-cli 是 gitbook 的 ...

  7. 第五周课后作业——热门软件创新分析+附加题1&附加题3

    鉴于我们寝室都热衷于手游,所以本次热门软件创新分析我就来分析一下几款热门的抽卡型手游.   阴阳师(后文简称YYS)——剧情画风唯美,配音引人入胜 作为网易公司研发的一款3D日式和风回合制游戏,YYS ...

  8. 关于MongoDB数据库的日志解析

    MongoDB日志记录了数据库实例的健康状态.语句的执行状况.资源的消耗情况,所以日志对于分析数据库服务和性能优化很有帮助. 因此,很有必要花费一些时间来学习解析一下MongoDB的日志文件. 日志信 ...

  9. Kafka相关内容总结(概念和原理)

    说明 主要内容是在网上的一些文章中整理出来: 加粗的字体是比较重要的内容,部分是自己的经验和理解: 整理的目的主要是为了方便查阅: 为什么需要消息系统 解耦: 在项目启动之初来预测将来项目会碰到什么需 ...

  10. 生成Csv格式的字符串

    using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using Sy ...