shell和查找文件的一些操作

shell的操作

编辑命令
Ctrl + a :移到命令行首
Ctrl + e :移到命令行尾
Ctrl + f :按字符前移(右向)
Ctrl + b :按字符后移(左向)
Alt + f :按单词前移(右向)
Alt + b :按单词后移(左向)
Ctrl + xx:在命令行首和光标之间移动
Ctrl + u :从光标处删除至命令行首
Ctrl + k :从光标处删除至命令行尾
Ctrl + w :从光标处删除至字首(单个单词删除)
Alt + d :从光标处删除至字尾
Ctrl + d :删除光标处的字符
Ctrl + h :删除光标前的字符
Ctrl + y :粘贴至光标后
Alt + c :从光标处更改为首字母大写的单词
Alt + u :从光标处更改为全部大写的单词
Alt + l :从光标处更改为全部小写的单词
Ctrl + t :交换光标处和之前的字符
Alt + t :交换光标处和之前的单词
Alt + Backspace:与 Ctrl + w 相同类似,分隔符有些差别
Esc+B 退后一个单词
esc + f 前进一个单词

重新执行命令
Ctrl + r:逆向搜索命令历史
Ctrl + g:从历史搜索模式退出
Ctrl + p:历史中的上一条命令
Ctrl + n:历史中的下一条命令
Alt + .:使用上一条命令的最后一个参数

控制命令
Ctrl + l:清屏
Ctrl + o:执行当前命令,并选择上一条命令
Ctrl + s:阻止屏幕输出
Ctrl + q:允许屏幕输出
Ctrl + c:终止命令
Ctrl + z:挂起命令

查找文件操作

快速kill服务进程

ps axu | grep "crontab.php --controller=cky" | awk '{print $2}' | xargs sudo kill -9

同上 ps axu | grep "new_packing_tool_api/crontab.php" | awk '{print $2}' | xargs sudo kill -9

ps axu | grep "crontab.php --controller=UploadMlrTask" | awk '{print $2}' 

ps -ef | grep cky | grep -v grep | awk {'print $2}' | xargs kill -9

grep 查找含有某字符串的所有文件

grep -rn "hello,world!" 
    * : 表示当前目录所有文件,也可以是某个文件名
    -r 是递归查找
    -n 是显示行号
    -R 查找所有文件包含子目录
    -i 忽略大小写
 
指定文件

grep -rn "110" 1.log

grep 如何显示一个文件的某几行:

cat cron | tail -n +100 | tail -n 200

对/etc/passwd 查看所有的用户

cat /etc/passwd | awk -F ':' '{print $1}'
//awk -F指定域分隔符为':',将记录按指定的域分隔符划分域,填充域,​$0则表示所有域,$1表示第一个域,​$n表示第n个域。

对 /var/log/secure 进行分析
1、定位有多少IP在爆破主机的root帐号:

grep "Failed password for root" /var/log/secure | awk -F " " '{print $11}' | wc -l

1、定位有多少IP在爆破主机的root帐号:    
grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

定位有哪些IP在爆破:
grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c

爆破用户名字典是什么?
 grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr

2、登录成功的IP有哪些:     
grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

登录成功的日期、用户名、IP:
grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}' 

其他
grep Y01015 /opt/log/python/api_info.log | tail -n 2 | sdk_email # 拿包里的accesstoken什么的调试
grep Y0201 /opt/log/nginx/access.log | tail -n 2 # 看请求nginx参数,可以拿模拟登录

grep /opt/log/python/p_api_info.log | tail -n 2 # 先看请求有没有到
grep 20220309xxxx25 http_request.log | tail -n 2 # 查看发货是否成功,如果不成功,应该是回调地址没配
posted @ 2022-12-02 10:21  陈科科  阅读(165)  评论(0编辑  收藏  举报