移动和重命名文件

mv 命令可以实现文件或目录的移动和改名 剪切的效果

同一分区移动数据,速度很快:数据位置没有变化

不同分区移动数据,速度相对慢:数据位置发生了变化

格式

和cp基本一样

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

常用选项

  • -i 交互式
  • -f 强制
  • -b 目标存在,覆盖前先备份

批量修改文件名

利用rename 可以批量修改文件名

rename [options] <expression> <replacement> <file>...
#为所有的conf文件加上.bak后缀:
rename 'conf' 'conf.bak' f*
#去掉所有的bak后缀:
rename '.bak' '' *.bak

删除文件

使用 rm 命令可以删除文件

rm删除的是磁盘文件

rm很危险,慎重起见,将rm别命定义为mv

alias rm='DIR=/data/backup`date +%F%T`;mkdir $DIR;mv -t $DIR'

格式

rm [OPTION]... FILE...
###常用选项:
-i 交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/

直接删根,从删库到跑路

rm -rf /*
rm -rf * .[^.]* #递归删所有的 * 可见文件 .[^.]*隐藏文件
rm -rf --no-preserve-root / 可以删根

执行rm -rf /*

  228  2020-06-18 16:55:42 rm -rf /*
229 2020-06-18 16:57:53 history
[root@C8-1 ~]# rm -rf /
-bash: /usr/bin/rm: No such file or directory
[root@C8-1 ~]# ll /
-bash: /usr/bin/ls: No such file or directory

特殊删除

#将名为 “/data/-f” 的文件删除
rm -f -f 此方式错误
rm -- -f
rm ./-f
rm /data/-f

安全销毁数据

rm虽然删除了文件,但是被删除的文件仍然可能被恢复,在安全要求较高的场景下,可以使用shred安全删除文件

shred格式

shred [OPTION]... FILE...

常见选项:

  • -z 最后一次覆盖添加0,以隐藏覆盖操作
  • -v 能够显示操作进度
  • -u 覆盖后截断并删除文件
  • -n # 指定覆盖文件内容的次数(默认值是3次)

目录操作 tree

显示目录树 tree

常见选项:

-d: 只显示目录

-L level:指定显示的层级数目

-P pattern: 只显示由指定wild-card pattern匹配到的路径

创建目录mkdir

mkdir建文件夹要求上级目录必须存在

常见选项:

-p: 存在于不报错,且可自动创建所需的各目录

-v: 显示详细信息

-m MODE: 创建目录时直接指定权限

删除目录

删除空目录rmdir

常见选项:

-p 递归删除父空目录

-v 显示详细信息

注意:rmdir只能删除空目录,如果想删除非空目录,可以使用rm -r 命令,递归删除目录树

示例

[root@C8-1 ~]# rm -rf *    ##已经将rm软连接成为mv
mv: invalid option -- 'r' ##mv报错没有这个选项
Try 'mv --help' for more information.
[root@C8-1 ~]# \rm -rf * ##用\ 反斜杠转义,使用原来的命令rm本身进行删除
[root@C8-1 ~]# ll
total 0
[root@C8-1 ~]# mkdir dir1/dir2/dir3/dir4 ##直接用mkdir创建层级文件夹,报错
mkdir: cannot create directory ‘dir1/dir2/dir3/dir4’: No such file or directory ##因为mkdir要求创建子目录的时候父目录必须存在
[root@C8-1 ~]# mkdir -pv !$ ##使用-pv选项,一个一个创建 。 $! 使用上一条命令的参数作为本条命令的参数
mkdir -pv dir1/dir2/dir3/dir4
mkdir: created directory 'dir1'
mkdir: created directory 'dir1/dir2'
mkdir: created directory 'dir1/dir2/dir3'
mkdir: created directory 'dir1/dir2/dir3/dir4'
[root@C8-1 ~]# tree #tree查看创建好的层级目录
.
└── dir1
└── dir2
└── dir3
└── dir4 4 directories, 0 files
[root@C8-1 ~]# rmdir -pv dir1/dir2/dir3/dir4 ##使用rmdir删除刚才创建的空文件夹
rmdir: removing directory, 'dir1/dir2/dir3/dir4'
rmdir: removing directory, 'dir1/dir2/dir3'
rmdir: removing directory, 'dir1/dir2'
rmdir: removing directory, 'dir1'
[root@C8-1 ~]# tree
. 0 directories, 0 files

Linux文件系统和管理-2文件操作命令(下)的更多相关文章

  1. Linux文件系统和管理-2文件操作命令(上)

    文件操作命令 文件 文件也包括目录 目录是一种特殊的文件 目录 一个目录名分成两部分 所在目录 dirname 父目录的路径 文件名 basename 本身就是两个命令 [root@C8-1 misc ...

  2. Linux文件系统和管理-2文件操作命令(中)

    创建空文件和刷新时间 touch touch命令可以用来创建空文件或刷新文件的时间 touch 存在的文件刷新时间,不存在的文件创建空文件 生成指定日期的日志文件 [root@C8-1 ~]# dat ...

  3. Linux文件系统和管理-1文件系统目录

    文件系统目录结构 Linux常见目录及用途 bin binary 放的是二进制程序 /usr/bin 和这是同一回事 bin -> usr/bin /bin是 /usr/bin的快捷方式 boo ...

  4. Linux文件系统及管理

    Linux文件系统及管理 一.Linux系统的文件系统与目录结构   Linux系统的文件目录结构为一个单根倒置的树结构,具体表现如下图: 从CentOS7开始,以下目录与之前的版本发生变化 ◆/bi ...

  5. Linux 文件系统 -- 简述几种文件类型

    Linux 中一切皆为文件,文件类型也有多种,使用 ls -l 命令可以查看文件的属性,所显示结果的第一列的第一个字符用来表明该文件的文件类型,如下: 1.普通文件 使用 ls -l 命令后,第一列第 ...

  6. Linux学习笔记之Linux用户与用户组、文件操作命令、文件权限剖析

    1.用户与用户组 Linux是一个多用户操作系统,通过用户与用户组的概念,可以实现保证安全性和隐私性.任何一个文件都具有User.Group.Others三个权限. 文件拥有者(Linux下所有的东西 ...

  7. Linux 批量查找并替换文件夹下所有文件的内容

    1.批量查找某个目下文件的包含的内容 cd etc grep -rn "查找的内容" ./ 2.批量替换某个目下所有包含的文件的内容 cd etc sed -i "s/查 ...

  8. Linux磁盘、目录、文件操作命令

    0x01. Linux磁盘分区与目录结构 ① 主分区.拓展分区.逻辑分区:早期主引导扇区MBR用64B存放主分区信息,每个分区用16B,因而上限为4个主分区,后来,因分区需求,引入拓展分区(类主分区) ...

  9. linux 文件系统的管理 (硬盘) 工作原理

    一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16 ...

随机推荐

  1. [Java并发]实现两个线程交替打印奇偶数(volatile+yield实现)

    解题思路 实现一个类OddEven 有一个打印奇数的方法,有一个打印偶数的方法. 类中有一个volatile变量 ,用来控制当前状态是该哪个方法打印. 方法中打印每个数前首先判断volatile变量的 ...

  2. 内存管理初始化源码5:free_area_init_nodes

    start_kernel ——> setup_arch ——> arch_mem_init ——> |——> bootmem_init  |——> device_tree ...

  3. C语言01

    从问题到C语言程序设计 1.1计算机的问题求解方法 程序设计面向的问题 什么问题可以用程序的方法解决? 打印九九乘法表 图形变换 文件压缩问题 ....... 一切可计算的问题 如何解决? 确定问题可 ...

  4. Docker实战(5)升级Docker版本后的报错

    出现情况:因我升级了Centos内核后docker服务无法开启,所做重装处理但还是无效,最终将docker服务做了升级,升级步骤我会放置下面,但在启动老版本容器又出现Error response fr ...

  5. 说说我对 WSGI 的理解

    先说下 WSGI 的表面意思,Web Server Gateway Interface 的缩写,即 Web 服务器网关接口. 之前不知道 WSGI 意思的伙伴,看了上面的解释后,我估计也还是不清楚,所 ...

  6. 【转】postgreSQL​之autovacuum性能问题分析(一)

    最近笔者在项目中遇到postgreSQL的性能问题,所以计划在公众号里写一个系列文章去追踪记录这些问题以及分析过程或解决方法. 本文主要是关于postgreSQL的autovacuum的问题.可能很多 ...

  7. 关于KeePass实现mstsc远程桌面(rdp协议)的自动登录

    本文的Keepass版本:KeePass Password Safe Version 2.45 首先介绍一下Keepass,引用官网的解释如下: KeePass is a free open sour ...

  8. linux 上部署 YApi 可视化接口管理平台

    linux 上部署 YApi 可视化接口管理平台: YApi 是一个高效.易用.功能强大的可视化接口管理平台,官方地址 : http://yapi.demo.qunar.com/ 环境要求 nodej ...

  9. PHP_Code_Challenge 1~30

    1. 1wMDEyY2U2YTY0M2NgMTEyZDQyMjAzNWczYjZgMWI4NTt3YWxmY= <?php error_reporting(0); require __DIR__ ...

  10. 【Django】将多个querysets拼接,使用djangorestframework序列化

    concern_set = models.Concern.objects.filter(user_id=1).values("concern_id") querysets = mo ...