您的位置:首页 > 运维架构 > Linux

Linux编程常用

2016-05-12 20:41 477 查看
获取时间

#include <sys/time.h> Linux系统的日期时间头文件。比如:

structtimeval tv;gettimeofday(&tv,NULL);ftime()。

#include <time.h> C/C++中的日期和时间头文件。比如:

char strtime[1024] = {0};

time_t now;

struct tm *ptm;

time(&now);

ptm = localtime(&now);

sprintf(strtime, "%d%02d%02d%02d%02d%02d", ptm->tm_year+1900,ptm->tm_mon+1,ptm->tm_mday,ptm->tm_hour,ptm->tm_min,ptm->tm_sec);

开机后台运行

可以通过增加一个(&)符号,将应用程序在后台启动。如:/path/to/yourprogram &

监控狗

如下,每隔5秒检查CardPlatform进程是否存在,不存在,就开启。

#!/bin/sh

echo "enter shell" >> /usr/local/zf/CardPlatform/log

while true;do

count=`ps -e | grep CardPlatform|grep -v grep`

if [ "$?" != "0" ];then

echo "start " >> /usr/local/zf/CardPlatform/log

echo ">>>>CardPlatform isnot runing..."

/usr/local/zf/CardPlatform/CardPlatform

else

echo "running " >> /usr/local/zf/CardPlatform/log

echo ">>>>CardPlatformis runing..."

fi

sleep 5

done

打印堆栈

#include <execinfo.h>

FILE* fp = fopen("/home/3.txt","ab");

if(fp)

{

void *bt[20];

char **strings;

size_t sz;

sz = backtrace(bt, 20);

strings = backtrace_symbols(bt, sz);

for(int i = 0; i < sz; ++i)

fprintf(fp,"%s\n", strings[i]);

fclose(fp);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: