//当前目录查找me.sh
find -name "me.sh"
//全局查找me.sh
find / -name "me.sh"
//查找以me开头的文件
find ~ -name "me.*"
//忽略大小写查找以me开头的文件
find ~ -iname "me.*"
检索文件内容
image.png//查找包含“moo”的 target开头的文件
grep "moo" target*
find ~ -name "target*"
find ~ | grep "target"
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
一次读取一行文本,按输入切割符进行切片,切成多个组成部分
将切片直接保存在内建的变量中,2...(1=="tcp" && 0}' netstat.txtawk '2==1{print $0}) || NR==1' netstat.txt`
NR==1 定位在file的第一行
awk 默认使用空格将信息按列分割开的
image.png
使用“,”作为分割符,将文件分割
awk -F "," '{print $2}' test.txt
做统计,前面接管道命令
awk {enginearr[$1]++}END{for(i in enginearr)print i "\t" enginearr[i]}
批量替换文本内容
sed
sed [option] 'sed command' filename
全名stream editor,流编辑器
适合用于对文本的行内容进行处理
不带g只替换首次,带g替换全部
image.png image.pngsed -i 's/^Str/String/' replace.java
Str开头的替换为Sting并保存
sed -i's/\.$/\;/' replace.java
注意转义
send -i's/Jack/me/g' replace.java
带g全局替换
删除空行
sed -i '/^ *$/d' replace.java
删除 Interger行
sed -i '/Interger/d' replace.java
网友评论