玖叶教程网

前端编程开发入门

pstack分析脚本--定位程序当前的阻塞位置+死锁排查

概述

今天主要推荐一个实用脚本,适合观察进程堆栈,下面一起来看看吧!


脚本内容

#!/bin/bash 
if (( $# < 1 )) 
then 
 echo "usage: `basename $0` pid" 1>&2 
 exit 1 
fi
if [[ ! -r /proc/$1 ]] 
then 
 echo "Process $1 not found." 1>&2 
 exit 1 
fi
backtrace="bt" 
if [[ -d /proc/$1/task ]] 
then 
 if [[ `ls /proc/$1/task 2>/dev/null | wc -l` > 1 ]] 
 then 
 backtrace="thread apply all bt" 
 fi ; 
elif [[ -f /proc/$1/maps ]] 
then 
 if grep -e libpthread /proc/$1/maps > /dev/null 2>&1 
 then 
 backtrace="thread apply all bt" 
 fi 
fi
GDB=gdb
$GDB -quiet -nx /proc/$1/exe -p $1 <<<"$backtrace" | sed -n -e 's/^(gdb) //' -e '/^#/p' -e '/^Thread/p'

LINUX shell 基础编程介绍(linux的shell编程)

【十二】shell 编程

shell脚本-检查密码是否被泄露(shell测试是否免密登录)

最近读的一本书《bash网络安全运维》中介绍了一个有趣的应用。

网站https://haveibeenpwned.com是一个在线服务,允许用户确定他们的电子邮件地址或密码是否在重大数据泄露期间被盗。该站点有一个RESTful API,它允许你使用密码或电子邮件地址的SHA1哈希查询数据库。它不要求你注册或使用API密钥,但是从相同的IP地址发出请求的速度不能超过每1500毫秒次。

shell——字符串操作(shell 字符串操作)

str="abc123abcABC"

#计算字符串的长度

分享一个实用pstack脚本,一键查看进程堆栈

概述

今天主要推荐一个实用脚本,适合观察进程堆栈,下面一起来看看吧!


脚本内容

#!/bin/bash 
if (( $# < 1 )) 
then 
 echo "usage: `basename $0` pid" 1>&2 
 exit 1 
fi
if [[ ! -r /proc/$1 ]] 
then 
 echo "Process $1 not found." 1>&2 
 exit 1 
fi
backtrace="bt" 
if [[ -d /proc/$1/task ]] 
then 
 if [[ `ls /proc/$1/task 2>/dev/null | wc -l` > 1 ]] 
 then 
 backtrace="thread apply all bt" 
 fi ; 
elif [[ -f /proc/$1/maps ]] 
then 
 if grep -e libpthread /proc/$1/maps > /dev/null 2>&1 
 then 
 backtrace="thread apply all bt" 
 fi 
fi
GDB=gdb
$GDB -quiet -nx /proc/$1/exe -p $1 <<<"$backtrace" | sed -n -e 's/^(gdb) //' -e '/^#/p' -e '/^Thread/p'

SHELL函数的应用(shell函数库)

函数:

Linux环境变量配置(linux环境变量配置文件有哪些)

Linux读取环境变量的方法:

export命令显示当前系统定义的所有环境变量
echo $PATH命令输出当前的PATH环境变量的值
这两个命令执行的效果如下

uusama@ubuntu:~$ export
declare -x HOME="/home/uusama"
declare -x LANG="en_US.UTF-8"
declare -x LANGUAGE="en_US:"
declare -x LESSCLOSE="/usr/bin/lesspipe %s %s"
declare -x LESSOPEN="| /usr/bin/lesspipe %s"
declare -x LOGNAME="uusama"
declare -x MAIL="/var/mail/uusama"
declare -x PATH="/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="uusama"
 
uusama@ubuntu:~$ echo $PATH
/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
其中PATH变量定义了运行命令的查找路径,以冒号:分割不同的路径,使用export定义的时候可加双引号也可不加。

DBA必备技能--一键监控告警日志文件

概述

今天分享下怎么去监控Oracle数据库的告警日志文件,注意这里是采用Perl结合Shell的方式,因为Shell获取错误的时间、行数等不如Perl操作字符串方便。

以下基于Oracle 11.2.0.4 RAC ,操作系统为redhat 6.6进行测试。


1、脚本:monitoring_alert_log.pl

有了这个神器,再也不怕shell写错了


写过shell脚本的人都知道,即便出现一些简单的语法错误,运行的时候也可能没有办法发现。有些看似运行正确的脚本,实际上可能在某些分支,某些场景下仍然出现错误,而有的写法可能运行正常,但是却不符合POSIX标准,不具备可移植性

介绍一些网络安全工作中常用的三层发现工具

这里主要分享介绍一些网络安全中的三层发现工具,第三层网络扫描基于TCP/IP、ICMP协议,这类工具有这样两个优点:

  • 可路由
  • 速度比较快
<< < 1 2 3 4 5 6 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言