二、文件系统:

Linux系统一切皆文件!整个文件系统是一棵颠倒过来的树形结构,根目录/在顶部,且从根目录到下面的任一文件有且仅有一条路径。

1、重要目录:

/usr  -> 存放普通用户命令(/usr/bin)、供root用户使用的系统管理命令,(/usr/sbin)、及安装的软件等数据。

/etc  ->  存放系统服务的配置文件。

/dev ->  存放设备文件,例如硬盘、cpu、网卡等数据。

/home ->  普通用户的家目录(或主目录),存放普通用户的配置文件。

/root  ->  root用户的家目录(或主目录),存放root用户的配置文件。

/boot  ->  存放系统启动过程所需的文件,系统内核等。

/var  ->  存放动态变化的文件,例如日志文件、缓存文件、数据库等。

/tmp  ->  存放临时文件,10天内未访问更改的文件将自动删除。

/run  ->  存放上一次系统启动过的进程文件。
4个链接文件:

当查看这些链接文件的时候,系统会自动显示指向的对应文件内容。

/bin  ->  /usr/bin  ->  存放普通用户使用的命令。

/sbin  ->  /usr/sbin  ->  存放root用户使用的命令。

/lib  ->  /usr/lib      库文件

/lib64  ->  /usr/lib64

绝对路径——以“/”开头的所有路径都是绝对路径

相对路径——不以“/”开头的路径都是相对路径

2、文件命令:

touch命令——创建文本文件

dd命令——创建一个大容量空文件

dd if=/dev/zero of=/test.file bs=1M count=100

mkdir命令——创建文件夹

mkdir -p 创建多级目录

cp命令——复制文件

cp -r 复制文件夹(递归复制)

注:当复制的旧文件与新文件重名时,旧文件将覆盖新文件。

mv命令——移动文件,重命名文件

rm命令——删除文件

rm -r 删除文件夹

rm -f 强制删除,不提示删除确认

echo命令——将命令后面的参数显示出来

$符号后面跟系统变量,这个变量可以是大写也可以是小写。
[root@localhost /]# echo $HOSTNAME
localhost.localdomain
[root@localhost /]# echo date
date
[root@chenglu213 /]# echo `date`
p 8 11:36:21 CST 2020

3、通配符:

*号简单模式匹配 -> 由0个或更多字符组成的字符串

?号简单模式匹配 -> 任何1个字符

{ }大括号 -> 批量执行命令,可以连续使用或者嵌套使用

[root@localhost /]# echo file{a{1,2},b,c}.log
filea1.log filea2.log fileb.log filec.log
[root@localhost /]# echo file{a,b,c}{1..3}.log
filea1.log filea2.log filea3.log fileb1.log fileb2.log fileb3.log filec1.log filec2.log filec3.log

``反引号命令替换

[root@localhost /]# echo today is `date +%X%x`
today is 12:59:11 PM03/13/2019

\反斜杠转意字符

[root@localhost /]# echo the hostname is \&HOSTNAME
the hostname is &HOSTNAME

4、重定向操作符:

一个>是重定向符,作用:覆盖写入,文件里的原有数据不保留

两个>>是追加重定向符,作用:追加写入,不覆盖已有内容,直接写在文件末尾,原数据保留

[root@localhost /]# touch err.txt
[root@localhost /]# systemctl restart unbound
Failed to restart unbound.service: Unit not found.
[root@localhost /]# systemctl restart unbound 2>err.txt
[root@localhost /]# cat err.txt
Failed to restart unbound.service: Unit not found.

标准输入(通道0)、标准输出(通道1)、标准错误(通道2)

5、管道符|:

将前面的执行结果丢到管道符后面的命令去执行

注:管道符前面有重定向符号时,管道符后面要加上一个tee命令。

[root@chenglu etc]# ls | grep ssh
ssh
[root@localhost /]# ls -l > 1.txt |tee less

6、Vim文本编辑器:

1.插入模式:

i/a/O/o -> vim进入编辑状态

i -> 在当前光标处进行编辑

a -> 在当前光标下一格进行编辑

O -> 在当前光标上一行插入一个空行进行编辑

o -> 在当前光标下一行插入一个空行进行编辑
2.命令模式:
Esc->vim退出编辑状态(插入模式)

yy(复制一行)

nyy(复制n行)

p(粘贴)

dd(删除一行)

ndd(删除n行)

u -> 撤销上一次操作

U -> 撤销之前所有的操作

大写的G  -> 光标跳到末行

两次小写的g -> 光标跳到首行
3.末行模式:
(w/q/wq/wq!=x) -> 退出vim

:set nu ->  显示行号

:set nonu  -> 不显示行号

/word  ->  从上而下查找某个单词内容

?word ->  从下而上查找某个单词word

N -> 从尾至头进行查找

n  -> 从头至尾进行查找

:%s/XXX/YYY/g  -> 将文档中所有的XXX替换为YYY
4.可视模式:

-> V(大写的) -> 用光标选择 -> Y

修改文本文档的两种方式:
1)echo  “XXX” > 、 >> filename

2) vim 或 vi

vim 1.txt 2.txt 3.txt ->  可同时打开多个文档

Linux基础二:文件系统的更多相关文章

  1. (大数据工程师学习路径)第一步 Linux 基础入门----文件系统操作与磁盘管理

    介绍 本节的文件系统操作的内容十分简单,只会包含几个命令的几个参数的讲解,但掌握这些也将对你在学习后续其他内容的过程中有极大帮助. 因为本课程的定位为入门基础,尽快上手,故没有打算涉及太多理论内容,前 ...

  2. Linux基础二(挂载、关机重启与系统等级)

    一.Linux 基础之挂载 1. 挂载和查询 1.1 挂载 什么叫挂载?装系统的时候要给硬盘分区,在 Windows 中要分 C 盘 D 盘 DEF 盘,这个操作我们叫做分配盘符,分配盘符之后我们就可 ...

  3. Linux基础入门-文件系统操作与磁盘管理

    一.简单文件系统操作: df (-h) 查看磁盘容量: rootfs作为系统启动时内核载入内存之后,在挂载真正的磁盘之前的一个临时文件系统: /dev/sda2 对应主机硬盘的分区,后面的a表示第几块 ...

  4. Linux基础二:初识linux命令

    一.UNIX和Linux操作系统概述 1.UNIX是什么 1)UNIX的定义: UNIX是一个计算机操作系统,一个用来协调.管理和控制计算机硬件和软件资源的控制程序. 2)UNIX操作系统的特点:多用 ...

  5. Linux基础(二)centOS7密码重置

    之前安装linux的时候,为了安全起见,起了一个非常特别的,长的密码.然后,就不记得了密码. 下面通过进入单用户模式,就行挽救. 1>重启系统,在系统菜单选择页按 [上下方向键],使界面停在该界 ...

  6. linux 基础二---用户群租权限

    用户&群组&权限 一.用户 1.用户及passwd文件 1) 掌握/etc/passwd文件的功能:存储所有用户的相关信息,该文件也被称为用户信息数据库(Database). 2) / ...

  7. Linux基础(二)

    网卡的启动与关闭 ipup ens33 启动网卡 ifdown 关闭网卡 普通用户没有该权限 root用户,管理员,普通用户的权限 root 至高无上的 root用户所在的组是root组 ​ 管理员 ...

  8. Linux基础二

    linux命令分类 内部命令:属于shell解释器 外部命令:独立于shell解释器 检查命令类型 type:检查命令字的类型 [root@localhost ~]# type ls ls 是 `ls ...

  9. Linux基础(二)之命令

    01-基础命令 1. 创建一个目录 mkdir /data 创建多级目录 mkdir -p /oldboy/data 2. 查看目录里面的内容 ls /data 3. 查看目录里面的详细信息 ls - ...

随机推荐

  1. 简易集成websocket技术实现消息推送

    Websocket 简介 首先介绍下WebSocket,它是一种网络通信技术,该技术最大的特点就是,服务器端可以主动往客户端发送消息:当然,客户端也可以主动往服务器发送消息,实现两端的消息通信,属于网 ...

  2. ORA-4031诊断分析

    1.Environment11.2.0.4 RAC 2.Symptomsrac的一节点alert日志一直刷ORA-4031报错,提示shared pool不足,二节点并没有此报错 Sat Oct 09 ...

  3. 实现一个简单的侧边导航Winform程序框架

    目录 简介 实现导航面板 实现方法 使用方法 实现标题栏 窗体拖拽及最大化 自定义窗体按钮 标题显示 按钮设置 实现状态栏 整体使用 参考文章 简介 每次新项目都要想着界面怎么设计好,但想来想去上位机 ...

  4. C++核心编程 1 程序的内存模型

    1.内存分区模型 C++程序在执行时,将内存大方向划分为4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理(写的所有代码都在代码区) 全局区:存放全局变量.静态变量以及常量 栈   区:由编 ...

  5. Tracking Analyst Tools(Tracking Analyst 工具)

    Tracking Analyst 工具 # Process: 创建追踪图层 arcpy.MakeTrackingLayer_ta("", 输出图层, "NO_TIME_Z ...

  6. MySQL灵魂拷问:36题带你面试通关!

    大家好,我是大彬~ 今天给大家分享MySQL常考的面试题,看看你们能答对多少. 本期MySQL面试题的目录如下: 事务的四大特性? 事务隔离级别有哪些? 索引 什么是索引? 索引的优缺点? 索引的作用 ...

  7. python中的load、loads实现反序列化

    load与loads 简介: 在python自动化中,我们传递一些参数是需要从文件中读取过来的,读取过来的字典并非python对象数据类型而是string类型. 这样在我们传递参数的时候就会出现格式不 ...

  8. Java(43)JDK新特性之方法引用

    作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15228461.html 博客主页:https://www.cnblogs.com/testero ...

  9. scala基础篇 源码中 :_*的作用

    在scala源码中有大量的:_*,其作用是把Array.list转换为参数列表,作为变长参数传入参数列表 例子: def sumx(a:Int*)={ a.sum } val a=Range(1,9) ...

  10. k8s 关于Job与Cronjob

    在Kubernetes 中通过创建工作负载资源 Job 可完成大型计算以及一些批处理任务.比如 Job 转码文件.获取部分文件和目录,机器学习中的训练任务等.这篇小作文我们一起来了解 k8s 中关于 ...