linux常用命令

Linux常用脚本背书

日志筛选

查看日志:筛选‘cost=任意数组3,6’,-P表示正则,o表示只显示匹配的项,其他不显示。 awk 按照=号分割,显示第2个字符,然后排序。
cat log/log_debug.log | grep -Po 'cost=\d{3,6}' | awk -F '=' '{print $2}'|sort -n

查看日志:筛选cost=2333任意3,到6位的数字。-P表示正则表达式,-C表示显示上下10行。
cat log/log_debug.log | grep -P -C 10 'cost=\d{3,6}'

查看日志:正则匹配所有异常信息,排序,去重,排序并统计,-n依照数值的大小排序;r表示倒序
cat log.log |grep -Po "[^ \(]*Exception"|sort|uniq -c|sort -nr

sort -n大小顺序排序,-r反序
cat log/log_debug.log |grep -Po "[^ \(]*Exception"|sort|uniq -c|sort -nr

统计分析

统计分析:统计每个单词出现的总次数(uniq去重, sort排序)
cat test.txt|awk '{print $0}' | sort -nr | uniq -c | sort -k1 -nr

grep 'java.lang.Thread.State' | sort -n|uniq -c| sort -nr

cat app.log |grep '关键字' |awk '{print $7}'|awk -F '=' '{print $2}'|awk -F ',' '{print $1}'|uniq |wc

ls wc

ls -l |grep ^d //只看文件夹
ls -l |grep ^- //只看文件

wc -c test.txt //统计文件字节数
wc -l test.txt //统计行数
wc -w test.txt //统计单词数,与都好或者换行符为结束的

locate搜索文件

每次使用前先更新一下吧,不然真搜不到.我也是醉了
更新locate 命令/usr/libexec/locate.updatedb
locate 搜索关键字

ps

//只显示进程号
ps -C <过滤关键字> --no-header

>ps -C  java --no-header
 4016 ?        00:49:25 java
 4091 ?        01:14:07 java
 5540 ?        00:21:24 java
 7215 ?        00:34:16 java
12568 ?        00:15:40 java
20784 ?        00:13:56 java
27604 ?        00:27:51 java
32712 ?        01:58:09 java

显示详情

ps -ef|grep 'java'

用户权限

增加用户:useradd -d /usr/username -m username
为用户增加密码:passwd username
新建工作组:groupadd groupname
将用户添加进工作组:usermod -G groupname username
删除用户:userdel username

修改文件所属用户组
chgrp -R 用户名 文件名

修改文件所属用户
chown [-R] 账号名称 文件/目录
-R表示递归目录下所有文件

修改用户权限与用户组可以直接一起改
chown [-R] 账号名称:组群 文件/目录

chown username:groupname file //修改file文件的用户组和用户

修改文件读写执行权限

文件权限分为三组,分别是user,group,others,那么我们可以用u,g,o分别代表三组,另外,a(all)代表全部,而权限属性即可用r,w,x三个字符来表示
chmod u/g/o/a +(加入)/-(除去)/=(设定) r/w/x 文件或者目录
chmod u=rwx,go=rx filed //用户拥有r读w写x执行权限, 用户组g和其他用户o拥有r,x权限
chmod u-x filed //撤销执行权限

drwxr-xr-x
解释:
d :第一位表示文件类型,d是目录文件、l是链接文件、-是普通文件、p是管道
rwx :第2-4位表示这个文件的属主拥有的权限。r是读、w是写、x是执行
r-x :第5-7位表示和这个文件属主所在同一个组的用户所具有的权限
r-x :第8-10位表示其他用户所具有的权限
rwx是固定顺序,没有则使用-表示. r-x 就是说没有w权限用-表示.

r:read就是读权限 --数字4表示
w:write就是写权限 --数字2表示
x:excute就是执行权限 --数字1表示

多文件搜索

查看当前目录下.conf文件结尾 的文件里面包含9040的文件.
find 目录 -name '*.*' |xargs grep '9040'
当前目录下
find -name '*.conf' |xargs grep '9040'

查看文件目录下多个文件中包含xxxx的文件

grep 'xxxx' 文件目录 -Rn
错误示范
ls | xargs grep ‘9040’
错误,ls列出来的是字符串,字符串在通过xargs赋值给grep 时报错了.
find就不一样,find返回的是一列一列的文件路径. 把一列一列的路径传递给grep

其他

查看用户列表
cat /etc/passwd

查看开放的所有端口
nmap 127.0.0.1

创建文件新姿势
创建一个test.txt文件
$ > test.txt
或者
$ touch test.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值