09 2012 档案
摘要:expect用法1. [#!/usr/bin/expect]这一行告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和linux下的bash、windows下的cmd是一类东西。注意:这一行需要在脚本的第一行。2. [set timeout 30]基本上认识英文的都知道这是设置超时时间的,现在你只要记住他的计时单位是:秒 。timeout -1 为永不超时3. [spawn ssh -l username 192.168.1.1]spawn是进入expect环境后才可以执行的expect内部命令,如果没有装expect或者直接在默认的SHELL下执行是找不到spawn.
阅读全文
摘要:问题:有很多方式可以执行脚本,1)。source test.bsh2)。. test.bsh3)。chmod a+x test.bsh;./test.bsh4)。sh test.bsh它们之间的差别是什么?解决办法:1. source命令的作用是读取并执行test.bsh中的命令;该命令经常用点命令“.”来替代。就是说,# source test.bsh与# . test.bsh的作用完全相同。2. 用脚本文件名本身执行(如果shell脚本具有可执行权限)和用sh命令执行脚本的作用完全相同。3. 用source命令执行脚本文件和用sh执行脚本文件的区别:用source执行脚本文件,执行过程不另
阅读全文
摘要:问题:在目标板中开启了thttpd服务;在/home/httpd/html/目录下放置包括index.html在内的所有网页;在/home/httpd/html/cgi-bin/目录下放置pdu.cgi文件,pdu.cgi的权限为777;在/etc/thttpd.con中的内容是:# This section overrides defaultsdir=/home/httpd/html# chrootnochrootuser=admin# default = nobodylogfile=/var/log/thttpd.logpidfile=/var/run/thttpd.pid# This s
阅读全文
摘要:问题:从c++文件中将std:string转换为char*后,返回包含IP地址的char*,需要将该字符串char*中的IP地址提取出来;解决办法:1. 解决思路:IP地址最长为12字符+3句点=15字符,一般性表示为192.168.111.111;可以从第一个字符开始解析,当不是'.'时,将所有字符保存下来,然后把所有保存下来的字符转换为16进制就可以了;2. 程序如下:typedef struct { char addr_ipv4[4];
} IPADDR_IPV4; #include // Function: To extract HEX value of IP addr
阅读全文
摘要:问题:break在for循环、while循环等循环流程控制中起的作用是停止执行break后面的语句,跳出本次循环,并跳出该循环控制体;在switch条件选择中,没有了循环控制,break又起什么作用呢?解决办法:1. switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇到break语句就退出switch语句,程序流程转向开关语句的下一个语句;若圆括号中表达式的值与所有case后面的常量表达式都不等,则执行default后面的语句,然
阅读全文
摘要:问题:使用pthread_create()函数创建线程的时候,需要将一个类型为u8(unsigned char)的变量作为参数传送到线程函数void turnon_RelaySameTime(void *relayState)中;要传递的变量:u8 ss_relay;创建线程:retval = pthread_create(&relayOn_thread, &attr, (void *)turnon_RelaySameTime, (void *)&ss_relay);线程函数:void turnon_RelaySameTime(void *relayState) { u
阅读全文
摘要:问题:在打印hostent的IP地址时,用到了inet_ntop(),在编译时显示这样的警告提示:dingq@wd-u1110:~/hwsvn/2sw/1prj_linux/pdu/src/branches/pdu-isocket/isocket$ make clean;make
rm -rf *.o tcpclient tcpserver
gcc -g3 -Wall -o0 -std=gnu99 -c nettrans.c -o nettrans.o
nettrans.c: In function ‘nettrans’:
nettrans.c:59:5: warning: implicit
阅读全文
摘要:Table of Contents1 时间类型。2 时间操作3 延时函数1 时间类型。Linux下常用的时间类型有4个:time_t,struct timeval,struct timespec,struct tm。time_t是一个长整型,一般用来表示用1970年以来的秒数。truct timeval有两个成员,一个是秒,一个是微妙。struct timeval
{ long tv_sec; long tv_usec;
};
struct timespec有两个成员,一个是秒,一个是纳秒。struct timespec
{ time_t tv_sec; lon...
阅读全文
摘要:问题:hostent是gethostbyname()和gethostbyaddr()都会涉及到的一个结构体。代码如下:struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; };gethostbyname()的原型是:struct hostent *gethostbyname(const char *name);函数的传入值是域名或者主机名,例如"www.google.com"、"191.168.1.253"等;函
阅读全文