04Linux文件管理命令


1,文件管理命令

touch [参数选项] 文件名		如果文件不存在就创建文件	如果存在就修改时间属性

touch a.txt					不存在就创建文件a.txt,存在就修改文件的时间属性
touch a{1..10}.txt			批量创建文件a1.txt,a2.txt,...

stat 文件					查看文件的详细信息


vi
	只能编辑文本内容,不能对字体 段落等进行排版
	不支持鼠标操作
	没有菜单 只有命令
	vi编辑器在 **系统管理 服务器管理** 编辑文件时, 其功能永远不是图形界面的编辑器能比拟的

vim
	是从vi发展出来的一个文本编辑器
	代码补全/编译及错误跳转等方便变成的功能特别丰富,在程序员中被广泛使用

1)touch(创建文件)

新建文件

touch [参数选项] 文件名		如果文件不存在就创建文件	如果存在就修改时间属性

touch a.txt					不存在就创建文件a.txt,存在就修改文件的时间属性
touch a{1..10}.txt			批量创建文件a1.txt,a2.txt,...

stat 文件					查看文件的详细信息

在这里插入图片描述
在这里插入图片描述

2)vi/vim编辑器(编辑文件)

Linux操作系统中有类似于Windows操作系统中的笔记本的文本编辑器,vi,vim文本编辑器

vi
	只能编辑文本内容,不能对字体 段落等进行排版
	不支持鼠标操作
	没有菜单 只有命令
	vi编辑器在 **系统管理 服务器管理** 编辑文件时, 其功能永远不是图形界面的编辑器能比拟的
vim
	是从vi发展出来的一个文本编辑器
	代码补全/编译及错误跳转等方便变成的功能特别丰富,在程序员中被广泛使用
简单来说:
	vi是老式的文字处理器,不过功能已经很齐全了。vim则是改进版,是程序开发者的一项很好用的工具。

vi/vim模式主要分为以下三种:

命令模式:在Linux终端中输入“vim 文件名”就进入了命令模式,但不能输入文字。 Windows阅读
编辑模式:在命令模式下按i就会进入编辑模式,此时就可以写入程式,按Esc可回到命令模式。 Windows编辑
末行模式:在命令模式下按:进入末行模式,左下角会有一个冒号出现,此时可以敲入命令并执行。Windows保存

下面是三种模式的简单分析图:
在这里插入图片描述

上图总结

上面的三种模式简单总结下就是:

1、vim 开始进入时是命令模式

2、按下I的时候会进入编辑模式

3、按下ESC然后在按下:的时候是末行模式

1、打开和新建文件

vim 文件名
	如果文件已经存在, 会直接打开该文件
	如果文件不存在, 保存且退出时 就会新建一个文件

2、进入编辑模式

在 vi 中除了常用 i 进入编辑模式 外, 还提供了一下命令同样可以进入编辑模式

命令英文功能常用
iinsert在当前字符前插入文本常用
Iinsert在行首插入文本较常用
aappend在当前字符后添加文本
Aappend在行末添加文本较常用
o在当前行后面插入一空行常用
O在当前行前面插入一空行常用

上图可以表现为以下形式,如下图

3、进入末行模式

编辑模式不能保存文件
必须先推到命令模式
先按Esc键退出到命令模式
然后按小写的 :wq 正常保存退出

多种退出模式命令
:q            当vim进入文件没有对文件内容做任何操作可以按"q"退出
:q!           当vim进入文件对文件内容有操作但不想保存退出
:wq          正常保存退出
:wq!         强行保存退出,只针对与root用户或文件所有人生

vim定位行

vim 文件名 +行号		查看文件并定位到具体的行号

vim异常处理

  • vim编辑器为了保证原文件a.txt的安全不会直接在原文件进行编辑,而是会在a.txt.swp文件中进行编辑 ,执行保存操作时才会将改动的结果写回到原文件
  • 如果 vim异常退出, 在磁盘上可能会保存有交换文件
  • 下次再使用 vim 编辑文件时, 会看到以下屏幕信息, 直接将交换文件删除即可不会影响原文件的内容
    在这里插入图片描述
    在这里插入图片描述

2,文件查看命令

以下5个为文件查看命令

序号命令对应英文作用
01cat 文件名concatenate查看小文件内容
02less -N 文件名less分屏 显示大文件内容
03head -n 文件名查看文件的前一部分
04tail -n 文件名查看文件的最后部分
05grep 关键字 文件名grep根据关键字, 搜索文本文件内容

cat命令

cat a.txt		查看a.txt的内容	(查看小文件)
cat -n a.txt	查看a.txt的内容(加入行号)

less命令

less b.txt		查看b.txt的内容  (产看大文件 分屏查看)
less -N b.txt	查看b.txt的内容(加入行号)

上下键来查看分屏内容
q或双击esc退出less命令

tail命令

tail big.txt		默认显示文件最后10行
tail -3 big.txt		显示文件最后3行
tail -f big.txt 	动态显示最后10行
tail -4f big.txt	动态显示最后4行
tail -n+2 big.txt	显示文件a.txt的内容,从第2行至文件末尾
tail -c45 big.txt	显示最后45个字符

grep命令

  • grep命令在使用的时候类似于我们的程序中的查询,或者在txt文档中通过ctr+f查找
  • grep除了能对文件操作为还可以查看我们的进程信息,类似于我们在Windows系统的任务管理器(任务栏–右键—启动任务管理器–进程)下的进程
grep 关键字 small.txt			把包含关键字的行展示出来
grep -n 关键字 smll.txt			把包含关键字的行展示出来且加上行号
grep -i 关键字 small.txt			把包含关键字的行展示出来,搜索时忽略大小写
grep -v 关键字 small.txt			把不包含关键字的行展示出来

ps -ef|grep 关键字					查找包含关键字的指定进程信息
ps -ef|grep 关键字| grep -v "grep" 	查找包含关键字的指定进程信息 并去除掉包含关键字grep的进程
ps -ef|grep -c sshd					查找进程个数				

3,Linux命令----echo命令

类似于Java里面的System.out.println()

echo "字符串"				展示文件 字符串直接输出
echo "字符串" > 文件名		将字符串内容写到文件中(覆盖文件中内容)
echo "字符串" >> 文件名		将字符串内容写到文件中(不覆盖文件中内容)
cat 不存在的目录 &>> error.log	将cat命令失败的信息追加到文件中(可以时任意文件 此处文件是error.log)

4,Linux命令----awk命令(文本分析工具)

AWK是一种处理文本文件的语言,是一个强大的文本分析工具。

之所以叫AWK是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。

1、数据准备:czbk-txt.txt文本内容如下:

zhangsan 68 99 26
lisi 98 66 96
wangwu 38 33 86
zhaoliu 78 44 36
maq 88 22 66
zhouba 98 44 46

2、搜索含有 zhang 和 li 的学生成绩:

cat czbk-txt.txt | awk '/zhang|li/'

执行效果如下
在这里插入图片描述

指定分割符, 根据下标显示内容

命令含义
awk -F ‘,’ ‘{print $1, $2, $3}’ 文件操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容

选项

选项英文含义
-F ','field-separator使用 指定字符 分割
$ + 数字获取第几段内容
$0获取 当前行 内容
NFfield表示当前行共有多少个字段
$NF代表 最后一个字段
$(NF-1)代表 倒数第二个字段
NR代表 处理的是第几行
# 查看文档内容
cat czbk-txt.txt 
#直接输出
cat score.txt | awk -F ' ' '{print $1,$2,$3}'

执行效果如下
在这里插入图片描述

指定分割符, 根据下标显示内容

命令含义
awk -F ’ ,’ ‘{OFS="==="}{print $1, $2, $3}’ 1.txt操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容

选项

选项英文含义
OFS="字符"output field separator向外输出时的段分割字符串
转义序列含义
\b退格
\f换页
\n换行
\r回车
\t制表符
# 按照 === 进行分割, 打印 第一段 第二段 第三段
cat  czbk-txt.txt | awk -F ' ' '{OFS="==="}{print $1,$2,$3}'
# 按照 制表符tab 进行分割, 打印 第一段 第二段 第三段
cat czbk-txt.txt| awk -F ' ' '{OFS="\t"}{print $1,$2,$3}'

执行效果如下
在这里插入图片描述
在这里插入图片描述
调用 awk 提供的函数

命令含义
awk -F ‘,’ ‘{print toupper($2)}’ 1.txt操作1.txt文件, 根据 逗号 分割, 打印 第一段 第二段 第三段 内容

常用函数如下:

函数名含义作用
toupper()upper字符 转成 大写
tolower()lower字符 转成小写
length()length返回 字符长度
# 打印第一段内容
 cat czbk-txt.txt | awk -F ' ' '{print $1}'
# 将第一段内容转成大写 且 显示 
 cat czbk-txt.txt | awk -F ' ' '{print toupper($1)}'

执行效果如下
在这里插入图片描述

求指定学科平均分

命令含义
awk ‘BEGIN{初始化操作}{每行都执行} END{结束时操作}’ 文件名BEGIN{ 这里面放的是执行前的语句 }
{这里面放的是处理每一行时要执行的语句}
END {这里面放的是处理完所有的行后要执行的语句 }

查看czbk-txt.txt 文件内容

cat czbk-txt.txt 

执行效果如下
在这里插入图片描述

查看总分

注意:这里计算的是第4列的总分

cat czbk-txt.txt| awk -F ' ' 'BEGIN{}{total=total+$4} END{print total}'

执行效果如下
在这里插入图片描述
查看总分, 总人数

注意:这里计算的是第4列的

cat czbk-txt.txt| awk -F ' ' 'BEGIN{}{total=total+$4} END{print total, NR}'

执行效果如下
在这里插入图片描述
查看总分, 总人数, 平均分

注意:这里计算的是第4列的

 cat czbk-txt.txt | awk -F ' ' 'BEGIN{}{total=total+$4} END{print total, NR, (total/NR)}'

执行效果如下
在这里插入图片描述

总结

awk在使用过程中主要用作分析

简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理

4,Linux命令----软连接

软连接其实就类似于我们在Windows中的【快捷方式】,Linux操作系统中文件名和文件内容是分开存放的

修改属主、属组和其他用户的权限

为什么要有软连接?

  • 因为某些文件和文件夹的路径很深,所以需要增加 软连接(快捷方式),方便快速访问

使用者权限:所有用户

语法如下:

命令英文作用
ln -s 目标文件绝对路径 快捷方式路径link给目标文件增加一个软链接, 通俗讲就是快捷方式

给home/itcast/txtfile.txt文件增加软连接

 ln  -s /home/itcast/txtfile.txt    czbk-txt

上面;我们将/home/itcast/路径下的txtfile.txt文件增加软连接到

czbk-txt,然后通过cat 访问czbk-txt也是可以正常访问的

如下图
在这里插入图片描述

5,Linux命令----find命令

find命令类似与在Windows中全局查找

1、将目前目录及其子目录下所有延伸档名是 gz 的文件查询出来

find . -name "*.gz"

执行效果如下图
在这里插入图片描述
2、将目前目录及其子目录下所有最近 1天内更新过的文件查询出来

find . -ctime -1

执行效果如下
在这里插入图片描述
3、全局搜索czbk

/代表是全盘搜索,也可以指定目录搜索

 find / -name  'czbk'

执行效果如下
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值