zoukankan      html  css  js  c++  java
  • bash实例 查看网站的所有网址是否能正常访问、 匹配出3位数字中的后两位 、 利用Python的CGI搭建网站、 ps命令查看进程 、 打印某个进程20s之内的内存占用情况,并取出平均值、利用top获取某个进程的cpu和内存,并打印平均值

    1、查看网站的所有网址是否能正常访问

    对网站https://www.testing-studio.com/发起请求,查询字符 href ,并将字符通过 正则表达式,http[^ " ']*"过滤(过滤含有" 或者 ' ),再通过while循环,输出每一行,对每一行的连接发起请求。-i 只请求头信息,判断头信息,是否包含状态码:200,如果包含就输出 200 $ line,不包含就输出 ERROR

    curl -s https://www.testing-studio.com/ | grep href | grep -o "http[^"']*" | while read line;do curl  -s -I $line | grep  200 && echo 200 $line || echo ERROR $line;done
    curl -s https://www.testing-studio.com/ | grep -o "http[^"']*" | while read line;do curl  -s -I $line -s -I $line | gre | grep  "200 OK" &>/dev/null || echo 200 $line;done

    在类Unix系统中,/dev/null(空设备文件或黑洞文件)是一个特殊的设备文件,所有写入其中的数据,都会被丢弃的无影无踪,/dev/null通常被用于丢弃不需要的数据输出,或作为用于输入流的空文件。这些操作通常由重定向完成。

    2、匹配出3位数字中的后两位

     3、排序

    netstat -tn | awk '{print $4}'| awk -F ':' '{print $1}'| sort | uniq -c| less

     4、利用Python的CGI搭建网站

    python2 -m CGIHTTPServer 8080

    python3 -m http.server

    进行网站的转发

    1)新建文件夹cgi-bin,在文件夹里面创建可执行文件

    mkdir cgi-bin 

    cd cgi-bin

    vim bd.sh

    #!/bin/bash
     echo "Content-type: text/html"
     echo ""
     curl http://www.baidu.com/s?$QUERY_STRING 2>/dev/null

    2)运行网站

    python2 -m CGIHTTPServer 8080

    3)访问网站

    127.0.0.1:8000/cgi-bin/bd.sh?wd=shell

    会将网页请求转发到百度

    访问静态页面

    将1.html放到cgi-bin之外的文件夹,通过127.0.0.1:8000/1.html

     5、ps命令查看进程

    ps -o uname,pid,ppid,thcount,ni,pri,psr,pcpu,pmem,rss,vsz,sz,start_time,time,comm,c,command -e | less

    6、打印某个进程20s之内的内存占用情况,并取出平均值

    14759是进程号

     for i in $(seq 20);do ps -o %mem -p 14759 | tail -1 ;sleep 1;done |awk '{t+=$1;print t,t/NR}'

    查看某个应用进程

    ps -ef | grep -i python

    7、利用top获取某个进程的cpu和内存,并打印平均值

    top -b -d 1 -n 20 -p 14759 | grep --line-buffered ^14759 | awk '{cpu+=$9;mem+=$10}{print $9,$10,cpu/NR,mem/NR}
  • 相关阅读:
    Spring Boot 使用常见问题
    JPA 使用
    JPA 复杂查询
    Gitlab利用Webhook实现Push代码后的jenkins自动构建
    消息中间件的使用场景
    消息中间件资料整理
    js原生跨域--用script标签实现
    遍历类成员并赋值
    Spring boot 读取 application.properties 文件方法
    fastjson 进行json转实体类对象及一些常用操作
  • 原文地址:https://www.cnblogs.com/ychun/p/14361115.html
Copyright © 2011-2022 走看看