Linux文件系统和管理-2文件操作命令(下)
移动和重命名文件
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文件操作命令(下)的更多相关文章
- Linux文件系统和管理-2文件操作命令(上)
文件操作命令 文件 文件也包括目录 目录是一种特殊的文件 目录 一个目录名分成两部分 所在目录 dirname 父目录的路径 文件名 basename 本身就是两个命令 [root@C8-1 misc ...
- Linux文件系统和管理-2文件操作命令(中)
创建空文件和刷新时间 touch touch命令可以用来创建空文件或刷新文件的时间 touch 存在的文件刷新时间,不存在的文件创建空文件 生成指定日期的日志文件 [root@C8-1 ~]# dat ...
- Linux文件系统和管理-1文件系统目录
文件系统目录结构 Linux常见目录及用途 bin binary 放的是二进制程序 /usr/bin 和这是同一回事 bin -> usr/bin /bin是 /usr/bin的快捷方式 boo ...
- Linux文件系统及管理
Linux文件系统及管理 一.Linux系统的文件系统与目录结构 Linux系统的文件目录结构为一个单根倒置的树结构,具体表现如下图: 从CentOS7开始,以下目录与之前的版本发生变化 ◆/bi ...
- Linux 文件系统 -- 简述几种文件类型
Linux 中一切皆为文件,文件类型也有多种,使用 ls -l 命令可以查看文件的属性,所显示结果的第一列的第一个字符用来表明该文件的文件类型,如下: 1.普通文件 使用 ls -l 命令后,第一列第 ...
- Linux学习笔记之Linux用户与用户组、文件操作命令、文件权限剖析
1.用户与用户组 Linux是一个多用户操作系统,通过用户与用户组的概念,可以实现保证安全性和隐私性.任何一个文件都具有User.Group.Others三个权限. 文件拥有者(Linux下所有的东西 ...
- Linux 批量查找并替换文件夹下所有文件的内容
1.批量查找某个目下文件的包含的内容 cd etc grep -rn "查找的内容" ./ 2.批量替换某个目下所有包含的文件的内容 cd etc sed -i "s/查 ...
- Linux磁盘、目录、文件操作命令
0x01. Linux磁盘分区与目录结构 ① 主分区.拓展分区.逻辑分区:早期主引导扇区MBR用64B存放主分区信息,每个分区用16B,因而上限为4个主分区,后来,因分区需求,引入拓展分区(类主分区) ...
- linux 文件系统的管理 (硬盘) 工作原理
一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16 ...
随机推荐
- [CF571B]Minimization(贪心+DP)
题目链接 http://codeforces.com/problemset/problem/571/B 题意 给数组,得到公式最小值. 题解 由题分成的子数组只有两种长度,每种长度的数组数量也是固定的 ...
- 预科班D8
2020.09.16星期三 预科班D8 学习内容: 一.注释 单行注释 ==>用 # 写在上一行或者该行后面 多行注释 ==>用 ''' '''或""" &q ...
- java面试题2-自己整合的
1.HashMap的底层实现原理 HashMap是数组+链表组成的实现了Map.Cloneable.Serializable接口,继承了AbstractMap类 HashMap是否线程安全? Hash ...
- java中对 闰年的计算 以及月份天数
import java.io.*;//局部变量的使用import java.util.Scanner; public class HelloJava { public static void ...
- java安全编码指南之:敏感类的拷贝
目录 简介 一个简单的SensitiveObject SensitiveObject的限制 对SensitiveObject的攻击 解决办法 简介 一般来说class中如果包含了私有的或者敏感的数据的 ...
- 从零搭建Golang开发环境--go修仙序章
1. 什么是go语言 Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态 .强类型.编译型语言 .Go 语 ...
- LeetCode刷题的一点个人建议和心得
目录 1. 为什么我们要刷LeetCode? 2. LeetCode的现状和问题 3. 本文的初衷 4. LeetCode刷题建议 4.1入门数据结构,打基础阶段 4.2 建立 ...
- Python3基础——函数
ython 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可 ...
- Java (一)下载APACHE Commons IO
一,进入APACHE的官网,在首页往下找APACHE PROJECT LIST > Commons,点击进入. 二,进入Apache Commons页面,找IO组件,点击进入. 三.点击链接Do ...
- MySQL中事务和事务的隔离级别
本文主要是帮助理解相关知识,没有具体的操作和代码. 事务 事务就是一组操作,这组操作要么全部成功,要么全部失败. 最经典的例子就是银行转账: 张三给李四转账100,对用户来说,就是一个操作.但对应到数 ...