二、文件系统:

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. 15种Python片段去优化你的数据科学管道

    来源:15 Python Snippets to Optimize your Data Science Pipeline 翻译:RankFan 15种Python片段去优化你的数据科学管道 为什么片段 ...

  2. windows terminal+wsl+neovim配置过程杂记

    长期记录,草稿 coc依赖于node,直接sudo apt intsll node得到的版本是10.x,无法满足要求, 这篇博客介绍了安装新版node的方法https://www.cnblogs.co ...

  3. nginx配置禁止爬虫配置

    1.在配置文件里添加禁止爬虫配置 server { ------ #添加如下内容即可防止爬虫 if ($http_user_agent ~* "qihoobot|Baiduspider|Go ...

  4. C#开发BIMFACE系列45 服务端API之创建离线数据包

    BIMFACE二次开发系列目录     [已更新最新开发文章,点击查看详细] BIMFACE的常规应用方式有公有云与私有化部署两种方式,并且浏览模型或者图纸需要使用ViewToken,ViewToke ...

  5. mysql创建用户及赋予某用户权限(附带基础查看表内容)

    首先登陆mysql 一:show databases;  展示所有数据库(root用户下) 二:use xxx (数据库名)使用use选择数据库 三:show xxx   查看数据库中的表 四:des ...

  6. [spring-rabbit]自动配置原理

    1 一个简单的示例 在Spring Boot项目中使用spring-rabbit时,需要经过以下几个步骤: 引入依赖. 配置基本连接信息. 创建消息发布者,并发送消息. 创建消息消费者,监听消息并处理 ...

  7. C# datagridview、datagrid、GridControl增加行号

    01 - WinForm中datagridview增加行号 在界面上拖一个控件dataGridView1,在datagridview添加行事件中添加如下代码: private void dataGri ...

  8. iOS能否自动扫描周边wifi信息并通过密码连接

    能否获取系统wifi列表信息 不能,只能获取用户当前连接的wifi信息 https://developer.apple.com/forums/thread/112177 https://develop ...

  9. hadoop学习笔记:运行wordcount对文件字符串进行统计案例

    文/朱季谦 我最近使用四台Centos虚拟机搭建了一套分布式hadoop环境,简单模拟了线上上的hadoop真实分布式集群,主要用于业余学习大数据相关体系. 其中,一台服务器作为NameNode,一台 ...

  10. (翻译)领域驱动设计实现-Implementing Domain Driven Design

    简介 Implementing Domain Driven Design 领域驱动设计实现 A practical guide for implementing the Domain Driven D ...