pstack.sh 改进版

pstack.sh 改进版本

 

#!/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
(gdb -quiet -nx /proc/$1/exe -p $1 <<EOF
define my_dump_all_stack
x \$pc
bt
end
thread apply all my_dump_all_stack
EOF
) | sed -n -e 's/^(gdb) //' -e '/^#/p' -e '/^Thread/p' -e's/^0x/#* 0x/p'

时间: 2024-11-08 18:46:05

pstack.sh 改进版的相关文章

pstack.sh 查看进程堆栈

#!/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 ]]

【原创】pstack 执行解析

首先,确认 pstack 只是一个 shell 脚本.  [root@Betty ~]# cat `which pstack` #!/bin/sh if test $# -ne 1; then echo "Usage: `basename $0 .sh` <process-id>" 1>&2 exit 1 fi if test ! -r /proc/$1; then echo "Process $1 not found." 1>&am

runtime-java 在linux 下调用 SH 文件 在windows 下调用 bat 执行后不能 看见进程

问题描述 java 在linux 下调用 SH 文件 在windows 下调用 bat 执行后不能 看见进程 public boolean execCmd(String[] cmds){Process p = null;Runtime rt = Runtime.getRuntime();BufferedReader in = null;InputStreamReader reader = null;try { p = rt.exec(cmds); InputStream info = p.get

cms_install.sh No such file or directory

出现 ./cms_install.sh: line 41: /usr/local/aegis/aegis_quartz/aegis_quartz: No such file or directory 的解决方案 将cms_install.sh内/usr/local/aegis/aegis_quartz/aegis_quartz 修改为 /usr/local/aegis/aegis_quartz/aegis_quartz.sh 如果再报错 无法创建文件夹可以执行 rm /usr/local/clo

shell sh如何每天备份log文件

#!/bin/bash # 每天备份log文件 log_path="/home/fdipzone/logs" # log目录 backup_path="/home/fdipzone/logs/bak" # 备份目录 expire=30 # 备份文件只保留30天 function backup(){ if [ -d "$log_path" ] && [ -d "$backup_path" ]; then for

sh memcached 进程启动及监控

1.memcached_inc.sh 设置路径,端口等讯息. #!/bin/sh #config include HOST=$(hostname) SITE="mysite" PORT=11211 MEMCACHED_PID_FILE="/tmp/memcached.pid" MEMCACHED_DAEMON_PID_FILE="/tmp/memcached_daemon.pid" MEMCACHED="memcached -d -m

shell sh更新的css图片版本

#!/bin/bash csstmpl_path="/home/fdipzone/php/csstmpl" css_path="/home/fdipzone/php/css" replacetags=(".png" ".jpg" ".gif") convertnum=0 search_child=$1 echo ${search_child:=0} > /dev/null function creat

informix中简单数据导入导出命令sh程序

Informix数据库自带两个命令:load和unload 我们可根据方便编写sh程序进行数据的导入导出,以下两段sh程序在RedHat Linux AS 4上测试通过,应该适用于大多数Unix,Linux操作系统,放到$INFORMIX_HOME$/bin下,则使用informix登录后就可以随意使用,记得chmod +x load和chmod +x unload ##!/bin/ksh; if [ $# -ne 3 ] then echo "error: arguments is not e

一个成批删除临时表的sh用于informix

#!/bin/csh if($#argv!=1 then echo"Usage:cshdeltmp.sh[dbname]"; exit(0); elseif($#argv==1 then setdbname="$argv[1]"; endif rmdeltmp*.sql echo"nowloadtmptabletodeltmp.sql" dbaccess$dbname<<EOF unloadto"deltmp.sql&quo