Linux命令篇(二):文档编辑部分

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快!

1、grep 命令

grep命令主要用于查询文件中的字符串或者应用于正则表达式中,基本语法格式:

gerp [参数选项] [文件]

常用参数

  • -i:忽略大小写进行匹配。
  • -v:反向查找,只打印不匹配的行。
  • -n:显示匹配行的行号。
  • -r:递归查找子目录中的文件。
  • -l:只打印匹配的文件名。
  • -c:只打印匹配的行数。

举例说明

  1. 在文件 testfile.txt 中查找字符串 “linux”,并打印匹配的行
grep linux testfile.txt
  1. 在标准输入中查找字符串 “linux”,并只打印匹配的行数
echo "hello linux! very good!" | grep -c linux 
  1. 在当前目录中,查找后缀有info字样的文件中包含 linux字符串的文件,并打印出该字符串的行
grep linux *info 
  1. 以递归的方式在/home/sk/test/目录下查找文件中带有linux字符串的文件,并打印字符串所在行的内容
grep -r linux /homa/sk/test/

2、rgrep 命令

rgrep命令等同于 grep -r 命令,主要是用于递归查找文件里符合条件的字符串,基本语法格式如下:

rgerp [参数选项] [文件]

举例说明

  1. 在当前目录下查找句子中包含"linux"字符串的文件
rgrep linux *

3、sed 命令

sed命令主要是利用脚本来处理文本文件

常用参数

  • a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)
  • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行
  • d :删除,因为是删除啊,所以 d 后面通常不接任何东东
  • i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)
  • p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行
  • s :取代,可以直接进行取代的工作,通常这个 s 的动作可以搭配正则表达式!例如 1,20s/old/new/g 就是啦!
  • -e:以选项中指定的script来处理输入的文本文件
  • -n:仅显示script处理后的结果

举例说明

手动创建一个test.txt文件,文件内容如下

hello world
java script
python
linux
shell script

  1. 在test.txt文件的第三行后面插入一行“this is c++ ”
sed -e 3a\this is c++ test.txt

使用如上sed命令后,输出结果如下:

hello world
java script
python
this is c++
linux
shell script

  1. 搜索 test.txt文件中有 script 关键字的行
nl test.txt | sed -n '/script/p'
2   java script 
6   shell script 

  1. 在test.txt文件中找到 script 对应的行,执行后面花括号中的一组命令,每个命令之间用分号分隔,这里把 pt 替换为 ss
nl test.txt | sed -n '/script/{s/pt/ss/;p;q}'
2   java scriss
6   shell scriss
# 这里的q是退出命令的意思
  1. 数据的查找与替换,sed的查找与替换命令与vi类似,格式如下:
sed 's/要被取代的字串/新的字串/g'
# s是查找与替换意思  
# g标识符代表全局替换意思
sed -e 's/scriss/script/' test.txt  # 将test文件中“scriss”字符替换为“script”
  1. 在test.txt文件的最后一行加入“this is linux test !”
sed -i '$a this is linux test !' test.txt
> hello world 
> java script 
> python 
> this is c++
> linux 
> shell script 
> this is linux test !

4、tr 命令

tr命令主要是用于转换或删除文件中的字符

常用参数

  • -d:删除指令字符
  • [:digit:] :所有数字
  • [:punct:] :所有标点字符
  • [:lower:] :所有小写字母
  • [:upper:] :所有大写字母

举例说明

  1. 将test.txt文件中的小写字母全部转换成大写字母
cat test.txt | tr a-z A-Z
cat test.txt | tr  [:lower:] [:upper:] 

5、expr 命令

expr命令是一个计算器命令,用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串,基本语法:

expr [表达式]

表达式的说明

  • 用空格隔开每个项;
  • 用反斜杠 \ 放在 shell 特定的字符前面;
  • 对包含空格和其他特殊字符的字符串要用引号括起来

举例说明

  1. 计算一个字符串“this is linux command”
expr length "this is linux command"
  1. 获取第一个字符数字串的索引位置
expr index "linux" i
2
  1. 整数的运算过程
expr 2 + 2
4

expr 60 / 2 / 2 
15

expr 20 \* 2  # (使用乘号时,必须用反斜线屏蔽其特定含义。因为shell可能会误解显示星号的意义)
40 

6、wc 命令

wc命令是一个用于计算数字的命令,可以用来计算文件的个数行数等

常用参数说明

  • -c:只显示Bytes数。
  • -l:显示行数。
  • -w:只显示字数

举例说明

  1. 直接用wc+文件,统计的是文件的行数、单词数、字节数
wc test.txt 
# 6 45 123 text.txt # test.txt文件的行数为6、单词数45、字节数123
  1. 配合find命令查询文件的个数
find . -type f -name "*.log" | wc -l 
# 在当前目录下查询以.log结尾的文件个数

7、let 命令

let命令在linux系统中作为一个计算工具,用于执行一个或多个表达式

举例说明

let a = 2 \* 3
let b = 40 / 4
echo $a $b
# 输出结果:6 10 

结束语

以上总结的命令,主要是针对Linux文档编辑部分日常常用的一些命令,并列举了每个命令高频使用的参数和应用场景,如有其他疑问请大家评论留言指出,欢迎大家指正。最后,希望这篇博文能给大家提供些许帮助,感谢大家的支持!
❤️❤️❤️ 喜欢博主的同学,请给博主一丢丢打赏吧↓↓↓您的支持是我不断创作的最大动力哟!感谢您的支持哦😘😘😘
打赏下吧

linux相关文章索引文章链接
Shell 流程控制Shell 流程控制
Shell 基本运算符Shell 基本运算符
Shell 变量Shell 变量
Linux命令篇(一):文件管理部分Linux命令篇(一):文件管理部分
Linux命令篇(二):文档编辑部分Linux命令篇(二):文档编辑部分
Linux命令篇(三):磁盘管理部分Linux命令篇(三):磁盘管理部分
Linux命令篇(四):系统管理部分Linux命令篇(四):系统管理部分
Linux命令篇(五):解压缩部分Linux命令篇(五):解压缩部分
Linux命令篇(六):vi/vim专项Linux命令篇(六):vi/vim专项
Linux系列:系统目录结构Linux系列:系统目录结构
Linux系列–shell基础语法Linux系列–shell基础语法
Linux系列–定时任务设置Linux系列–定时任务设置
  • 31
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟小码

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值