美文网首页
linux 复习

linux 复习

作者: AGEGG | 来源:发表于2020-04-05 13:34 被阅读0次
image.png image.png

//当前目录查找me.sh
find -name "me.sh"
//全局查找me.sh
find / -name "me.sh"
//查找以me开头的文件
find ~ -name "me.*"
//忽略大小写查找以me开头的文件
find ~ -iname "me.*"

image.png

检索文件内容

image.png

//查找包含“moo”的 target开头的文件
grep "moo" target*

image.png

find ~ -name "target*"
find ~ | grep "target"

image.png image.png image.png
find ~ 遍历当前及子目录所有文件
| 管道符将内容交给下一步
grep "target" 查找当前标准输入

//从app.log中 查找 partial['true'] 的行
`grep 'partial\['true'\]' app.log`
//从app.log中 查找 partial['true'] 的行  并 只查看engine[]里的内容
`grep 'partial\['true'\]' app.log | grep -o 'engine\[[0-9a-z]*\]' `

//查看tomcat 进程
`ps -ef | grep tomcat`
//由于查询语句也是一条指令 过滤查询语句
`ps -ef | grep tomcat | grep -v "grep"`

对文件内容做统计

awk
awk [options] 'cmd' file
一次读取一行文本,按输入切割符进行切片,切成多个组成部分
将切片直接保存在内建的变量中,1,2...(0表示行的全部) 支持对单个切片的判断,支持循环判断,默认分隔符为空格 ![image.png](https://img.haomeiwen.com/i13450194/1aa41dfbc134dadb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) `awk '1=="tcp" && 2==1{print0}' netstat.txtawk '1=="(tcp" &&2==1{print $0}) || NR==1' netstat.txt`
NR==1 定位在file的第一行

image.png

awk 默认使用空格将信息按列分割开的


image.png

使用“,”作为分割符,将文件分割
awk -F "," '{print $2}' test.txt

做统计,前面接管道命令
awk {enginearr[$1]++}END{for(i in enginearr)print i "\t" enginearr[i]}

image.png image.png

批量替换文本内容

sed
sed [option] 'sed command' filename
全名stream editor,流编辑器
适合用于对文本的行内容进行处理

image.png image.png

不带g只替换首次,带g替换全部

image.png image.png

sed -i 's/^Str/String/' replace.java Str开头的替换为Sting并保存
sed -i's/\.$/\;/' replace.java 注意转义
send -i's/Jack/me/g' replace.java 带g全局替换

image.png

删除空行
sed -i '/^ *$/d' replace.java
删除 Interger行
sed -i '/Interger/d' replace.java

相关文章

网友评论

      本文标题:linux 复习

      本文链接:https://www.haomeiwen.com/subject/uqybuhtx.html