北京织梦网站建设,遵义网站建设方案,旅游网站开发文档怎么写,中小企业网络拓扑图目录 一、Linux下文件命名规则
1. 可以使用哪些字符
2. 文件名的长度
3. 文件名的大小写
4. Linux文件扩展名
二、目录创建与删除
1. 目录创建
1.1. mkdir创建目录
1.2. mkdir -p 递归创建目录
1.3. 使用mkdir同时创建多个目录
2. 目录删除#xff08;必须是空目录必须是空目录
2.1. rmdir移除空目录
2.2. rmdir -p递归删除空目录
2.3. 使用rmdir同时删除多个空目录
三、文件创建与删除
1. 文件创建
1.1. touch创建文件
1.2. 使用touch命令同时创建多个文件
1.3. {1..5}根据序号同时创建多个文件
2. 文件删除
2.1. rm 普通删除
2.2. rm -rf 删除根目录下所有文件
四、复制操作
1. cp复制操作
2. cp复制并重命名文件
3. cp复制文件夹到指定路径
五、剪切操作
六、重命名操作
七、打包压缩与解压缩
1. 打包
2. 压缩
3. 单独打包操作
4. 查看打包后的文件信息
5. 打包并压缩
6. 对压缩包进行解压
八、zip压缩与解压缩
1. zip压缩
2. unzip解压缩
3. 扩展
4. zip压缩与解压缩
九、VIM编辑器
1. vi 编辑器
2. vim 编辑器
3. vim编辑器的安装
3.1. 已安装
3.2. 未安装
十、vim编辑器的四种模式
1. VIM四种模式
2. VIM四种模式的关系
3. VIM编辑器的使用
3.1. 使用vim打开文件
3.2. vim编辑器保存文件
3.3. vim编辑器强制退出不保存
十一、四种模式下面的相关操作
1. 命令模式下的相关操作
1.1. 如何进入命令模式
1.2. 命令模式下我们能做什么
1.3. 移动光标到首行或末行
1.4. 翻屏
1.5. 快速定位光标到指定行
1.6. 复制/粘贴
1.6.1. 复制当前行光标所在那一行
1.6.2. 从当前行开始复制指定的行数如复制5行5yy
1.7. 剪切/删除
1.7.1. 剪切/删除当前光标所在行
1.7.2. 剪切/删除多行从当前光标所在行开始计算
1.8. 撤销/恢复
2. 末行模式下的相关操作
2.1. 如何进入末行模式
2.2. 2. 末行模式下我们能做什么
2.3. 3. 保存/退出
2.4. 4. 查找/搜索
2.5. 文件内容的替换
2.6. 显示行号
2.7. set paste模式
3. 编辑模式
3.1. 编辑模式的作用
3.2. 如何进入编辑模式
3.3. 退出编辑模式
4. 可视化模式
4.1. 如何进入到可视化模式
4.2. 可视化模式复制操作
7.3 为配置文件添加#多行注释
7.4 为配置文件去除#多行注释
十二、VIM编辑器实用功能
1. 代码着色
2. 异常退出解决方案
3. 退出vim编辑器
十三、文本处理命令
1. 查看文件内容
cat查看及合并
more分屏显示文件
less分屏显示文件
head显示文件开头
tail显示文件结尾
2. 统计文件信息
wc统计文件内容数量
du统计文件大小
3. 文本处理
find文件查找
grep搜索文件内容
输出重定向 一、Linux下文件命名规则
1. 可以使用哪些字符
理论上除了字符“/”之外所有的字符都可以使用
在目录名或文件名中不建议使用某些特殊字符例如、、、* 等
2. 文件名的长度
目录名或文件名的长度不能超过 255 个字符
3. 文件名的大小写
Linux目录名或文件名区分大小写建议文件名一律使用小写字母
4. Linux文件扩展名
Linux文件的扩展名对 Linux 操作系统没有特殊的含义
Linux 系统并不以文件的扩展名开分区文件类型
例如zhengge.exe 只是一个文件其扩展名 .exe 并不代表此文件就一定是可执行的。
在Linux系统中文件扩展名的用途为了使运维人员更好的区分不同的文件类型
在Linux操作系统中文件的类型是依靠权限位的标识符来进行区分当然也可以通过颜色如黑色普通文件天蓝色文件夹
二、目录创建与删除
1. 目录创建
1.1. mkdir创建目录
基本语法
mkdir 目录名称
主要功能根据目录的名称创建一个目录
mkdir make directory
1.2. mkdir -p 递归创建目录
基本语法
mkdir -p /usr/local/nginx/conf
# 选项说明
-p递归创建从左边的路径开始一级一级创建目录直到路径结束
1.3. 使用mkdir同时创建多个目录 mkdir 目录名称1 目录名称2 目录名称3 ...
案例在当前目录下创建a、b、c三个目录
mkdir a
mkdir b
mkdir c
# 或
mkdir a b c
2. 目录删除必须是空目录
2.1. rmdir移除空目录
基本语法
rmdir 目录名称
rmdir remove directory移除目录
案例把家目录下的zhengge删除空目录
rmdir zhengge
2.2. rmdir -p递归删除空目录
基本语法
rmdir -p 目录名称1/目录名称2/目录名称3/...
主要功能从右向左一级一级删除空目录
案例递归删除zhengge文件夹中的yunwei文件夹中的zhengge
rmdir -p zhengge/yunwei/zhengge
2.3. 使用rmdir同时删除多个空目录
rmdir 目录名称1 目录名称2 目录名称3 ...
案例删除家目录中的a、b、c三个空目录
rmdir a b c
三、文件创建与删除
1. 文件创建
1.1. touch创建文件
基本语法
touch 文件名称
主要功能在Linux系统中的当前目录下创建一个文件
案例在当前目录下创建一个readme.txt文件
touch readme.txt
1.2. 使用touch命令同时创建多个文件
基本语法
touch 文件名称1 文件名称2 文件名称3 ...
案例创建一个shop商城文件夹然后在内部创建index.php/admin.php/config.php三个文件
mkdir shop
touch shop/index.php
touch shop/admin.php
touch shop/config.php
# 或
touch shop/index.php shop/admin.php shop/config.php
提出问题观察以下命令看看有何区别
第一种写法touch shop/index.php shop/admin.php shop/config.php
代表在shop目录下首先创建一个index.php在创建一个admin.php最后config.php
第二种写法touch shop/index.php admin.php config.php
代表在shop目录下首先创建index.php然后在当前目录下创建admin.php最后在当前目录下创建
config.php
1.3. {1..5}根据序号同时创建多个文件
基本语法
touch 文件名称{开始序号..结束序号}
# 含义
# 根据提供的开始序号~结束序号一个一个创建文件
案例创建file1、file2、file3、file4、file5共5个文件
touch file1
touch file2
touch file3
touch file4
touch file5
或
touch file{1..5}
2. 文件删除
2.1. rm 普通删除
基本语法
rm [选项] 文件或文件夹的名称
# 选项说明
# -r 针对文件夹代表递归删除先把目录下的所有文件删除然后在删除文件夹
# -f 强制删除不提示初学者一定要慎重 2.2. rm -rf 删除根目录下所有文件
rm -rf /* 代表删除根目录下的所有文件如果没有备份恢复的几率不高
# 说明
# rm 1删除
# -r 递归删除无论文件夹是否为空
# # -f 强制删除不提示
# / 代表根分区
# * 所有
四、复制操作
1. cp复制操作
基本语法
# cp [选项] 源文件或文件夹 目标路径
选项说明
-r 递归复制主要针对文件夹
cp copy复制
案例把readme.txt文件从当前目录复制一份放到/tmp文件夹中
# cp readme.txt /tmp/
2. cp复制并重命名文件
基本语法
# cp [选项] 源文件或文件夹 目标路径/新文件或文件夹的名称
案例把readme.txt文件从当前目录复制一份放到/tmp文件夹中并重命名为readme.txt.bak
# cp readme.txt /tmp/readme.txt.bak
3. cp复制文件夹到指定路径
# cp -r 源文件夹名称 目标路径/
案例把shop目录连通其内部的文件统一复制到/tmp目录下
# mkdir shop
# touch shop/index.php shop/admin.php shop/config.php# cp -r shop /tmp/
五、剪切操作
基本语法
# mv 源文件或文件夹 目标路径/
mv move剪切、移动的含义
案例把readme.txt文件剪切到/tmp目录下
# rm -rf /tmp/readme.txt# mv readme.txt /tmp/
案例把shop文件夹移动到/usr/local/nginx目录下
# mkdir /usr/local/nginx
# mv shop /usr/local/nginx/
六、重命名操作
什么是重命名
简单来说就是给一个文件或文件夹更改名称
基本语法
# mv 源文件或文件夹名称 新文件或文件夹的名称
案例把readme.txt文件更名为README.md文件
# mv readme.txt README.md
案例把shop文件目录更名为wechat目录
# mkdir shop
# mv shop wechat
七、打包压缩与解压缩
1. 打包
默认情况下Linux的只能压缩一个文件
针对多文件或文件夹无法进行直接压缩
所以需要提前对多个文件或文件夹进行打包这样才可以进行压缩操作
1.txt 5MB
2.txt 10MB
3.txt 15MB
1.txt 2.txt 3.txt 打包 123.tar 30MB
打包只是把多个文件或文件夹打包放在一个文件中
但是并没有进行压缩所以其大小还是原来所有文件的总和
2. 压缩
也是一个文件和目录的集合且这个集合也被存储在一个文件中
但它们的不同之处在于压缩文件所占用的磁盘空间比集合中所有文件大小的总和要小
1.txt 5MB
2.txt 10MB
3.txt 15MB
1.txt 2.txt 3.txt 压缩 123.tar.gz 20MB体积变小了
3. 单独打包操作
基本语法
# tar [选项] 打包后的名称.tar 多个文件或文件夹
选项说明
-c 打包
-f filename打包后的文件名称
-v 显示打包的进度
-u update缩写更新原打包文件中的文件
-t 查看打包的文件内容
案例把a.txt、b.txt、c.txt文件打包到abc.tar文件中
# tar -cvf abc.tar a.txt b.txt c.txt
案例把wechat文件夹进行打包wechat.tar
# tar -cvf wechat.tar wechat
4. 查看打包后的文件信息
命令模板
# tar -tf 打包后的文件名称
主要功能查看tar包中的文件信息
案例查看abc.tar包中的文件信息
# tar -tf abc.tar
# tar -uf 打包后的文件名称
u update更新如果还想往tar包中更新或追加内容都可以通过-u选项
案例向abc.tar包中添加一个d.txt文件
# touch d.txt
# tar -uf abc.tar d.txt
查看是否添加成功
# tar -tf abc.tar
扩展如何把tar包中的文件释放出来
打包
# tar -cf abc.tar a.txt b.txt c.txt打包 释放-c 变成 -x释放
# tar -xf abc.tar
5. 打包并压缩
基本语法
# tar [选项] 压缩后的压缩包名称 要压缩的文件或文件夹
选项说明
-cf 对文件或文件夹进行打包-v 显示压缩进度-z 使用gzip压缩工具把打包后的文件压缩为.gz
-j 使用bzip2压缩工具把打包后的文件压缩为.bz2
-J 使用xz压缩工具把打包后的文件压缩为.xz压缩速度gzip bzip2 xz
压缩率gzip bzip2 xz
100M 90M 80M 70M
案例把a.txt、b.txt、c.txt文件打包并压缩为abc.tar.gz
# tar -zcf abc.tar.gz a.txt b.txt c.txt
案例把wechat文件夹压缩为wechat.tar.gz格式的压缩包
# tar -zcf wechat.tar.gz wechat
6. 对压缩包进行解压
解压过程非常简单就是把压缩的参数中的c换成x就可以实现解压缩了
*.tar.gz格式的压缩包
# tar -zxf 名称.tar.gz*.tar.bz2格式的压缩包
# tar -jxf 名称.tar.bz2*.tar.xz格式的压缩包
# tar -Jxf 名称.tar.xz
案例把abc.tar.gz格式的压缩包进行解压缩操作
# tar -zxf abc.tar.gz
案例把wechat.tar.gz格式的压缩包进行解压缩操作
# tar -zxf wechat.tar.gz
八、zip压缩与解压缩
1. zip压缩
基本语法
# zip [选项] 压缩后的文件名称.zip 文件或文件夹
选项说明
-r 递归压缩主要针对的是文件夹
Linux下已经有gzip、bzip2以及xz压缩命令了为什么还需要使用zip压缩呢
答zip格式在Windows以及Linux中都是可以正常使用的。
案例把a.txt、b.txt、c.txt进行压缩为abc.zip
# zip abc.zip a.txt b.txt c.txt
案例把wechat文件夹压缩为wechat.zip
# zip -r wechat.zip wechat
2. unzip解压缩
基本语法
# unzip 压缩包名称 解压到当前目录
# unzip 压缩包名称 -d 指定路径 解压到指定路径下
案例对abc.zip文件进行解压缩
# unzip abc.zip
案例把wechat.zip解压到/usr/local/nginx目录下
# unzip wechat.zip -d /usr/local/nginx/
3. 扩展
# tar -zxf 压缩包名称.tar.gz [参数] 指定路径
第一种解决思路随用随查百度、Google
# tar -zxf 压缩包名称.tar.gz -C 指定路径
第二种解决思路可以使用man命令manual缩写手册
# man tar命令# tar -zxf 压缩包名称.tar.gz -C 指定路径
4. zip压缩与解压缩
给我们提供一种既可以在Windows中使用的也可以提供一种在Linux中使用的通用的压缩格式。
# zip [-r] 压缩包名称.zip 要压缩的文件或文件夹
解压缩
# unzip 压缩包名称.zip -d 指定路径
九、VIM编辑器
1. vi 编辑器 vivisual editor编辑器通常被简称为vi
它是Linux和Unix系统上最基本的文本编辑器类似于Windows 系统下的notepad记事本编辑器
2. vim 编辑器
Vim(Vi improved)是vi编辑器的加强版比vi更容易使用
类似于windows编辑系统的NotePad文本编辑器
vi的命令几乎全部都可以在vim上使用。
3. vim编辑器的安装
3.1. 已安装
Centos通常都已经默认安装好了 vi 或 Vim 文本编辑器
我们只需要通过vim命令就可以直接打开vim编辑器了如下图所示 3.2. 未安装
有些精简版的Linux操作系统默认并没有安装vim编辑器可能自带的是vi编辑器
当我们在终端中输入vim命令时系统会提示command not found。
解决办法有网的前提下可以使用yum工具对vim编辑器进行安装
# yum install vim -y
十、vim编辑器的四种模式
1. VIM四种模式
1、命令模式
使用VIM编辑器时默认处于命令模式
在该模式下可以移动光标位置可以通过 快捷键 对文件内容 进行复制、粘贴、删除等操作
2、编辑模式或输入模式
在命令模式下输入小写字母a或小写字母i即可进入编辑模式在该模式下可以对文件的内容进行编辑
3、末行模式
在命令模式下输入冒号 : 即可进入末行模式可以在 末行输入命令 来对文件进行查找、替换、保存、退出等
操作
4、可视化模式
可以做一些列选操作通过方向键选择某些列的内容
VIM四种模式的关系
2. VIM四种模式的关系 3. VIM编辑器的使用
3.1. 使用vim打开文件
基本语法
# vim 文件名称
① 如果文件已存在则直接打开
② 如果文件不存在则vim编辑器会自动在内存中创建一个新文件
**案例**使用vim命令打开readme.txt文件
# vim readme.txt
3.2. vim编辑器保存文件
在任何模式下连续按两次Esc键即可返回到命令模式
然后按冒号进入到末行模式输入wq代表保存并退出。 3.3. vim编辑器强制退出不保存
在任何模式下连续按两次Esc键即可返回到命令模式。然后按冒号
进入到末行模式输入q!代表强制退出但是不保存文件 十一、四种模式下面的相关操作
1. 命令模式下的相关操作
1.1. 如何进入命令模式
在Linux操作系统中当我们使用vim命令直接打开某个文件时默认进入的就是命令模式
如果我们处于其他模式编辑模式、可视化模式以及末行模式可以连续按两次Esc键也可以返回命令模式
1.2. 命令模式下我们能做什么
①移动光标 ② 复制 粘贴 ③ 剪切 粘贴 删除 ④ 撤销与恢复
1.3. 移动光标到首行或末行
移动光标到首行 gg
移动光标到末行 G
1.4. 翻屏
向上 翻屏按键ctrl b before 或 PgUp
向下 翻屏按键ctrl f after 或 PgDn
向上翻半屏按键ctrl u up
向下翻半屏按键ctrl d down
1.5. 快速定位光标到指定行
行号 G如150G代表快速移动光标到第150行
1.6. 复制/粘贴
1.6.1. 复制当前行光标所在那一行
按键yy
粘贴
在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前则使用P键
1.6.2. 从当前行开始复制指定的行数如复制5行5yy
粘贴
在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前则使用P键
1.7. 剪切/删除
在VIM编辑器中剪切与删除都是dd
如果剪切了文件但是没有使用p进行粘贴就是删除操作
如果剪切了文件然后使用p进行粘贴这就是剪切操作
1.7.1. 剪切/删除当前光标所在行
按键dd 删除之后下一行上移
粘贴p
注意dd 严格意义上说是剪切命令但是如果剪切了不粘贴就是删除的效果。
1.7.2. 剪切/删除多行从当前光标所在行开始计算
按键数字dd
粘贴p
特殊用法剪切/删除光标所在的当前行光标所在位置之后的内容但是删除之后下一行不上移
按键D 删除之后当前行会变成空白行
1.8. 撤销/恢复
撤销uundo
恢复ctrl r 恢复取消之前的撤销操作 [重做redo]
2. 末行模式下的相关操作
2.1. 如何进入末行模式
进入末行模式的方法只有一个在命令模式下使用冒号的方式进入
2.2. 2. 末行模式下我们能做什么
文件保存、退出、查找与替换、显示行号、paste模式等等
2.3. 3. 保存/退出
:w 代表对当前文件进行保存操作但是其保存完成后并没有退出这个文件
:q 代表退出当前正在编辑的文件但是一定要注意文件必须先保存然后才能退出
:wq 代表文件先保存后退出保存并退出
如果一个文件在编辑时没有名字则可以使用:wq 文件名称代表把当前正在编辑的文件保存到指定的名称中然后退出
:q! 代表强制退出但是文件未保存不建议使用
2.4. 4. 查找/搜索
切换到命令模式然后输入斜杠/也是进入末行模式的方式之一
进入到末行模式后输入要查找或搜索的关键词然后回车
如果在一个文件中存在多个满足条件的结果
在搜索结果中切换上/下一个结果N/n 大写N代表上一个结果小写n代表下一个结果
如果需要取消高亮则需要在末行模式中输入:noh【no highlight】
2.5. 文件内容的替换
第一步首先要进入末行模式在命令模式下输入冒号:
第二步根据需求替换内容
① 只替换光标所在这一行的第一个满足条件的结果只能替换1次
:s/要替换的关键词/替换后的关键词 回车
案例把hello centos中的centos替换为centos7.6
切换光标到hello centos这一行
:s/centos/centos7.6
② 替换光标所在这一行中的所有满足条件的结果替换多次只能替换一行
:s/要替换的关键词/替换后的关键词/g gglobal全局替换
案例把hello centos某一行中的所有centos都替换为centos7.6
切换光标到hello centos这一行
:s/centos/centos7.6/g
③ 针对整个文档中的所有行进行替换只替换每一行中满足条件的第一个结果
:%s/要替换的关键词/替换后的关键词
案例把每一行中的第一个hello关键词都替换为hi
:%s/hello/hi
④ 针对整个文档中的所有关键词进行替换只要满足条件就进行替换操作
:%s/要替换的关键词/替换后的关键词/g
案例替换整个文档中的hello关键词为hi
:%s/hello/hi/g
2.6. 显示行号
基本语法
:set nu
nu number行号 取消行号 :set nonu 2.7. set paste模式
为什么要使用paste模式
问题
在终端Vim中粘贴代码时发现插入的代码会有多余的缩进而且会逐行累加
原因是终端把粘贴的文本存入键盘缓存Keyboard Buffer中Vim则把这些内容作为用户的键盘输入来处理
导致在遇到换行符的时候如果Vim开启了自动缩进就会默认的把上一行缩进插入到下一行的开头最终使代码变乱
在粘贴数据之前输入下面命令开启paste模式
:set paste
粘贴完毕后输入下面命令关闭paste模式
:set nopaste
3. 编辑模式
3.1. 编辑模式的作用
编辑模式的作用比较简单主要是实现对文件的内容进行编辑模式。
3.2. 如何进入编辑模式
首先你需要进入到命令模式然后使用小写字母a或小写字母i进入编辑模式。
命令模式 i insert缩写代表在光标之前插入内容
**命令模式 a **append缩写代表在光标之后插入内容
3.3. 退出编辑模式
在编辑模式中直接按Esc即可从编辑模式退出到命令模式。
4. 可视化模式
4.1. 如何进入到可视化模式
在命令模式中直接按ctrl v可视块或V可视行或v可视然后按下↑ ↓ ← →方向键来选中需要复制的区块
按下y 键进行复制不要按下yy最后按下p 键粘贴
退出可视模式按下Esc
4.2. 可视化模式复制操作
第一步在命令模式下直接按小v进入可视化模式
第二步使用方向键↑ ↓ ← →选择要复制的内容然后按y键
第三步移动光标停在需要粘贴的位置按p键进行粘贴操作
7.3 为配置文件添加#多行注释
第一步按Esc退出到命令模式按gg切换到第1行
第二步然后按Ctrlv进入到可视化区块模式列模式
第三步在行首使用上下键选择需要注释的多行
第四步按下键盘大写“I”键进入插入模式Shift i
第五步输入#号注释符
第六步输入完成后连续按两次Esc即可完成添加多行注释的过程
7.4 为配置文件去除#多行注释
第一步按Esc退出到命令模式按gg切换到第1行
第二步然后按Ctrlv进入可视化区块模式列模式
第三步使用键盘上的方向键的上下选中需要移除的#号注释
第四步直接按Delete键即可完成删除注释的操作
十二、VIM编辑器实用功能
1. 代码着色
之前说过vim 是vi 的升级版本其中比较典型的区别就是vim 更加适合coding
因为vim比vi 多一个代码着色的功能这个功能主要是为程序员提供编程语言升的语法显示效果
如下
第一步定义后缀名为网页文件的代码文件
# vim index.php
第二步编写对应的PHP代码
?phpecho hello world;
?
在VIM编辑器中我们可以通过:syntax on或:syntax off开启或关闭代码着色功能
2. 异常退出解决方案
什么是异常退出
在编辑文件之后并没有正常的去wq保存退出而是遇到突然关闭终端或者断电的情况则会显示下面的
效果这个情况称之为异常退出 温馨提示每个文件的异常文件都会有所不同其命名规则一般为.文件名称.swp
解决办法将交换文件在编程过程中产生的临时文件删除掉即可
【在上述提示界面按下D 键或者使用rm 指令删除交换文件】
# rm .1.php.swp
3. 退出vim编辑器
在vim中退出正在编辑的文件可以使用:q或者:wq
除了上面的这个语法之外vim 还支持另外一个保存退出(针对内容)方法:x
① :x在文件没有修改的情况下表示直接退出等价于:q在文件修改的情况下表示保存并退出:wq
② 如果文件没有被修改但是使用wq 进行退出的话则文件的修改时间会被更新
但是如果文件没有被修改使用x 进行退出的话则文件修改时间不会被更新的主要是会混淆用户对文件的修改时间的认定。
十三、文本处理命令
1. 查看文件内容
cat查看及合并
命令cat
作用查看文件内容
语法#cat 文件名称
#cat 文件1 文件2 文件3
用法一cat 文件名
示例代码
#cat 1.txt
含义显示1.txt文件的内容
特别注意cat 命令用于查看文件内容时不论文件内容有多少都会一次性显示。如果文件非常大那么文件开头的内容就看不到了。cat 命令适合查看不太大的文件。 用法二cat 文件1 文件2 文件3
示例代码
#cat 1.txt 2.txt 3.txt
含义将1.txt和2.txt文件内容合并后输出到3.txt more分屏显示文件
命令more
作用分屏查看文件
语法#more 文件名
流程more在读取文件时默认已经加载文件的全部内容。
另外more不能通过上下方向键显示上下内容退出时会在Shell中留下刚显示的内容
用法一more 文件名
示例代码
#more /var/log/boot.log
含义分页显示/var/log/boot.log文件的内容 more 命令的执行会打开一个交互界面下面是一些常用交互命令 回车键 向下移动一行。 d 向下移动半页 空格键 向下移动一页 b 向上移动一页后期引入功能早期more只能前进不能后退 q 退出 more less分屏显示文件
命令less less is moremore的增强版
作用分屏查看文件
语法# less 文件名
流程不是加载整个文件而是一点一点进行加载相对而言读取大文件时效率比较高。
另外less可以通过上下方向键显示上下内容退出时不会在Shell中留下刚显示的内容
示例代码使用less命令查看/var/log/boot.log的文件内容
用法一less 文件名
示例代码
#less /var/log/boot.log
含义分页显示/var/log/boot.log文件的内容 less 命令的执行也会打开一个交互界面下面是一些常用交互命令和more类似 回车键 向下移动一行。 d 向下移动半页。 空格键 向下移动一页。 b 向上移动一页。 上下方向键 向上与向下移动less命令特有功能键 less -N 文件名称 显示行号 / 字符串 搜索指定的字符串。 q 退出less
cat,more,less三者的对比 cat more less 作用 显示小文件(一屏以内) 显示大文件超过一屏 显示大文件超过一屏 交互命令 无 有 有 上下键翻行 无 无 有
head显示文件开头
命令head
作用查看一个文件的前n 行如果不指定n则默认显示前10 行
语法#head [参数选项] 文件名
常见参数
-n 表示显示前n行的内容n等于行数
用法一head 文件名
示例代码
#head /var/log/boot.log
含义显示/var/log/boot.log文件的内容默认为前10行用法二head -n 文件名
示例代码
#head -3 /var/log/boot.log
含义显示/var/log/boot.log文件的前3行内容 tail显示文件结尾
命令tail
作用查看一个文件的最后n 行如果n 不指定默认显示最后10 行
语法# tail -n 文件路径 【n 表示数字】
常见参数
-n 显示最后n行的内容n等于行数
-f 输出文件变化后新增加的数据
用法一tail 文件名
示例代码
#tail /var/log/boot.log
含义显示/var/log/boot.log文件的内容默认为最后10行用法二tail -n 文件名
示例代码
#tail -5 /var/log/boot.log
含义显示/var/log/boot.log文件的最后5行内容 用法二tail -f 文件名
示例代码
#tail -f /var/log/messages
含义显示/var/log/messages文件中执行tail -f 命令后新增的数据
注意作用相当于查看一个文件动态变化的内容一般用于查看系统的日志的变化按下ctrlc可以退出查看状态 注意
ctrlc 键在命令行中c 不再表示copy而表示cancel取消
在程序执行过程中通常都可以使用ctrlc来终止程序运行或者退出程序
2. 统计文件信息
wc统计文件内容数量
命令wcwc word count
作用用于统计文件内容信息包含行数、单词数、字节数
语法# wc [参数选项] 文件名
常见参数
-l表示lines行数以回车/换行符为标准
-w表示words单词数 依照空格来判断单词数量
-c表示bytes 字节数空格回车换行
用法一wc -lwc 文件名
示例代码
#wc -lwc /var/log/boot.log
含义统计/var/log/boot.log文件的行数单词数字节数
注意wc命令选项可以混在一起搭配使用但选项的顺序不影响输出结果第一个是行数第二个是单词数第三个数字节数。 du统计文件大小
命令du
作用查看文件或目录(会递归显示子目录)占用磁盘空间大小
语法# du [参数选项] 文件名或目录名
常见参数
-s summaries只显示汇总的大小统计文件夹的大小
-h表示以高可读性的形式进行显示如果不写-h默认以KB的形式显示文件大小
用法一du 文件名
示例代码
#du /var/log/boot.log
含义统计/var/log/boot.log文件的大小用法二du -h 文件名
示例代码
#du -h /var/log/boot.log
含义统计/var/log/boot.log文件的大小,以高可读性显示 示例代码统计 /var/log 目录大小
用法三du 目录名
示例代码
#du /var/log/
含义统计/var/log/目录的大小包含目录下每一个单独文件的大小用法四du -s 目录名
示例代码
#du -s /var/log/
含义统计/var/log/boot.log文件的大小,汇总只显示目录大小用法五du -sh 目录名
示例代码
#du -sh /var/log/
含义统计/var/log/boot.log文件的大小,汇总只显示目录大小,并采用高可读性 3. 文本处理
find文件查找
命令find
作用用于查找文档其选项有55 个之多
语法# find 路径范围 选项1 选项1的值 [选项2 选项2 的值…]
常用参数
-name按照文档名称进行搜索支持模糊搜索
* 通配符匹配任意个任意字符
-stype按照文档的类型进行搜索文档类型的值ffile)表示文件d(directory)表示文件夹
用法一find 路径范围 选项1 选项1的值 选项2 选项2的值
示例代码
#find /var/ -name boot.log -type f
含义在/var/目录下查找名称等于boot.log类型是文件的文档 A var表示要查找的目录名字
B var表示在var目录内查找
用法二find 路径范围 选项1 选项1的值使用通配符 选项2 选项2的值
示例代码
#find /var/log -name *.log -type f
含义在/var/log目录下查找所有.log结尾类型是文件的文档*.log需要用引号引起来。 用法一find 路径范围 选项1 选项1的值
示例代码
#find /var/log -type d
含义在/var/log目录下查找所有文件夹 grep搜索文件内容
命令grep
作用在文件中直接找到包含指定信息的那些行并把这些信息显示出来
语法#grep 要查找的内容 文件名
用法一grep 查找的内容 文件名
示例代码
#grep network boot.log
含义在boot.log文件中查找包含network的行 用法二grep 查找的内容 多个文件
示例代码
#grep network /var/log/*
含义在/var/log目录下的所有文件中查找包含network的行 输出重定向
场景
一般命令的输出都会显示在终端中有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计
则这时候需要使用到的输出重定向技术
标准输出重定向 :覆盖输出会覆盖掉原先的文件内容
追加重定向 :追加输出不会覆盖原始文件内容会在原始内容末尾继续添加
语法#有输出的命令 重定向符号 文件名
用法一使用 进行覆盖输出
示例代码
#ll llroot.txt
含义将ll命令输出的内容写入到llroot.txt文件中如果llroot.txt文件中有其他内容则先清空在写入
注意文件路径中的文件可以是不存在的文件例如llroot.txt可以不存在执行命令时会自动创建这个文件 用法二使用 进行追加输出
示例代码
#ll llroot.txt
含义将ll命令输出的内容追加写入到llroot.txt文件中
注意文件路径中的文件可以是不存在的文件例如llroot.txt可以不存在执行命令时会自动创建这个文件