在Linux下面的调用ping
我们在网络编程的时候经常要检测系统是否得到了有效的IP,是否可以正确联通到网络里面。通常的检查方法就是使用PING命令。
而在程序里面如何自动让程序知道哩?有两种办法,
一种是利用系统的能力,直接调用系统的shell,如方法一就可以在linux系统中很好使用。
另外一种是直接在代码里面实现ping命令,通过调用函数的形式来获取系统的状态。
还有更好的办法么,如有请回复。
方法一、
#include<stdlib.h>
void main()
{
int i;
int count=0;
while(1)
{
i=system("ping -c 1 10.27.60.122");
printf("\ni=%d",i);
count++;
if(i==0)
{
i=system("settop install;settop odtest.out");
break;
}
if(count>3)
{
printf("\n error cannot reach 10.27.60.122");
system("cd /root;ls;settop install;settop odtest.out");
break;
}
}
}
方法二、
/*
* P I N G . C
*
* Using the InterNet Control Message Protocol (ICMP) "ECHO" facility,
* measure round-trip-delays and packet loss across network paths.
*
* Author -
* Mike Muuss
* U. S. Army Ballistic Research Laboratory
* December, 1983
* Modified at Uc Berkeley
*
* Changed argument to inet_ntoa() to be struct in_addr instead of u_long
* DFM BRL 1992
*
* Status -
* Public Domain. Distribution Unlimited.
*
* Bugs -
* More statistics could always be gathered.
* This program has to run SUID to ROOT to access the ICMP socket.
*/
#include <stdio.h>
#include <errno.h>
#include <sys/time.h>
#include <sys/param.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/file.h>
#include <netinet/in_systm.h>
#include <netinet/in.h>
#include <netinet/ip.h&g
相关文档:
GCC 支持了许多不同的语言,包括 C、C++、Ada、Fortran、Objective C,Perl、Python 和 Ruby,甚至还有Java。
Linux 内核和许多其他自由软件以及开放源码应用程序都是用 C 语言编写并使用 GCC 编译的。
编译C++程序:
-c 只编译不连接
g++ file1 -c -o file1.o
g++ file2 -c -o file2.o
g++ f ......
svn log test.php #显示这个文件的所有修改记录,及其版本号的变化
1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录)
例如:
svn checkout svn://192.168.1.1/pro/
2、往版本库中添加新的文件
add file add add *.php #添加当前目录下所有的php文件
3、将改动的文件提交到版本库
"Log ......
许多刚刚接触Linux的人往往纠结于Linux的众多格式解压问题,今天 带给大家常用的Linux的解压命令,不妥之处,欢迎指正!
第一:以.tar.gz结尾的文件
tar xvzf file.tar.gz 或者 gzip -dc file.tar.gz | tar xvf -(这里用到了管道)
第二:以.zip结尾的文件
unzip file.zip
第三:以.tar.bz2结尾的文件
tar ......
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # ......
软件包:
httpd-2.23
下载地址
http://apache.justdn.org/httpd/httpd-2.2.3.tar.gz
apr-1.27
apr-util-1.27
http://apache.justdn.org/apr/,版号自已找,最好和我的所提供的版本号一样
Oracle Berkeley DB 4.0.14
下载地址
http://download.oracle.com/berkeley-db/db-4.0.14.tar.gz
subversion-1.4.0
下载地址
......