十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
直接全路径执行,假设软件在/usr/local/abc/abcd
创新互联公司主要从事成都网站设计、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务睢县,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
那就直接这样写/usr/local/abc/abcd
就能执行了
需要建立socket,参数是AF_INET,SOCK_RAW,IPPROTO_ICMP
自己构造ICMP数据包, sendto发送给某地址。
ICMP有多种,你可以发送type为13的时间戳请求。
然后调用recvfrom会收到type为14的timestamp reply的IP包,
IP头一般是20 Bytes,里面包含src IP,des IP还有TTL等。
IP包的数据就是返回ICMP timestamp reply报文,里面有origTimestamp,recvTimestamp,transStamp,可以计算出时间。
可以参考网页链接网页链接
觉得有帮助可以注册帐号,给他点个“星”
上网下一份busybox的源码,里面很多基础命令的源码都有。如ls、cp等等。
这个肯定要比自己写的好~!
有问题请追问。
闲来无事,我找个给你吧,请查收附件。
建议自己去下个,啥命令的源码都能看。
楼上说的很正确,不过还有一种方法,你可以把你当前程序的路径设置到环境变量$PATH里面去!