当前位置:  技术问答>linux和unix

unix下用C如何调用111端口,或者说 如何让服务器自动启动一个程序?

    来源: 互联网  发布时间:2016-06-04

    本文导语:  假设在unix下某目录有一个用C编译好的执行文件abc,运行时带一个年月参数,如abc  200905 ,abc程序运行时会在屏幕显示一些信息。 现在想实现这么个功能:局域网中任一台机器(xp系统), 运行一个VC或BC开发的程...

假设在unix下某目录有一个用C编译好的执行文件abc,运行时带一个年月参数,如abc  200905 ,abc程序运行时会在屏幕显示一些信息。

现在想实现这么个功能:局域网中任一台机器(xp系统), 运行一个VC或BC开发的程序,该程序向服务器(UNIX系统)发出请求,服务器收到请求后可以自动启动程序 abc,并且吧abc在屏幕上显示的内容传送到xp系统的机器上来显示。

我注意到unix下有一个111端口,作用是 111 TCP/UDP  sunrpc          Sun Remote Procedure Call Sun远程过程调用

请问各位大侠:
1。是否可以在写客户端程序时直接调用111端口,把abc  200905当成参数传给111端口,这样就可以直接启动abc 程序,而不需要再编写服务器端的程序呢?
2。如何判断abc程序已经执行完毕? 
3。如何截取abc程序运行后在屏幕显示的信息?

|
像你这样的要求根本没必要用什么远程过程调用来实现,远程过程调用是用来调用动态库的。
建立一个简单的服务器程序以后,可以把客户程序传过来的字串识别为命令
并在执行之前把标准输出 1 dup到tcp套接字上。
close(1);
dup(socket);
这样程序的执行结果就直接通过套接字传送给客户程序了,程序执行完成以后,服务端会自动关掉连接。

|
LZ的这种需求似乎很普通,就像4楼说的,另外写一个监听端口(111)的程序(111端口是否小了点?用户可支配的端口应该是大于1024的吧?)。
当监控程序监听到111端口的交易请求(请求数据包括年月YYYYMM)时,然后调用abc,将日期作为参数。并且根据abc的返回值来判断abc执行是否成功。最后监听程序将abc的返回值通过socket返回给客户端

这个方法能够实现LZ的1、2两点。而第3点似乎不容易实现,因为abc中显示的内容,监听程序不容易捕捉到。
如果需要实现第3点,我的方法是更改一下程序abc,使监听程序与abc之间采用消息队列通讯(或者其他的进程间通信方式)。这样将abc在执行过程中的显示的内容,通过消息队列传递给监听程序,监听程序通过socket返回给客户端。剩下的部分就是客户端去处理如何显示信息了。
希望能对你有帮助

|
现在想实现这么个功能:局域网中任一台机器(xp系统), 运行一个VC或BC开发的程序,该程序向服务器(UNIX系统)发出请求,服务器收到请求后可以自动启动程序 abc,并且吧abc在屏幕上显示的内容传送到xp系统的机器上来显示。 


写个socket监听,接收到请求就启动程序,用system就可以,然后把内容重定向到文件里,从文件里读出数据,再通过socket发给xp机器.

    
 
 

您可能感兴趣的文章:

  • 我在服务器端用C写了一个程序,在某端口进行监听客户端发来的请求,UNIX允许这个“端口”的取值范围是什么?我的端口会不会和别人的重复
  • tcp端口被系统(unix stream)占用,本地服务无法正常启动
  • unix 下 怎样知道在某个端口监听的程序是什么
  • UNIX SCO 5.0.5 是否有tcp端口侦听个数限制?
  • UNIX计算机上的root用户可以访问1024以上的端口吧?
  • 如何判断另一台UNIX机器打开了FTP端口?
  • 如何查看UNIX系统上的一个端口是否已被分配出去?
  • 如何在UNIX下禁用USB端口
  • unix网络编程问题,ftp取文件时网断了,为什么两个端口还是established?
  • freebsd/UNIX有没有端口转发工具?
  • UNIX服务器连接公司局域网和INTERNET,如果要阻止公司内部访问QQ、MSN之类的使用是不是用iptables阻止端口?
  • 执行一个main函数程序时,unix操作系统调用什么创建进程?fork?newproc?
  • 如何远程调用unix主机上的命令?
  • 关于unix系统调用的问题
  • 那位大虾帮忙解释一下,为什么调用unix命令失败
  • unix程序中调用其他程序的问题
  • LuaJIT 的 Unix 系统调用库 Ljsyscall
  • IP地址数字互转 iis7站长之家
  • 在Java中如何调用Unix系统的crypt()函数?
  • java 下如何调用 window or unix 下的可执行程序
  • pc文件中如何调用unix命令
  • UNIX下如何调用webservice
  • UNIX 操作系统中进程之间调用的通信方式
  • unix(Sun OS)下调用.so的问题
  • 急!重分相谢!UNIX下如何判断system调用ftp成功?
  • 提问,unix下C语言如何调用xml文件,不够再加分
  • Unix环境下,c++如何调用java写的webservice?
  • Unix下System函数实现中为何要使用shell去调用执行程序?
  • unix 下web应用程序调用 一个写数据库的perl脚本 的问题。
  • 请问在Unix下开发ftp传输模块,有没有什么系统函数可以调用。
  • 以普通用户的身份登陆到unix,能不能调用shell执行特定的操作?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SCO UNIX 5.0用软盘启动之后无法启动UNIX
  • 如何同时在启动菜单中启动LINUX和UNIX
  • 我要在一台装window2000的机器下装unix,但用unix光盘启动不了,如何解决?
  • unix .sh文件系统启动时如何实现自动启动
  • 我的SCO UNIX一起动就自动启动x-window(用tty02). 请问如何直接启动到字符界面。
  • unix无法启动了!!!
  • 有谁在Unix上用过RMI么?rmiregistry启动后如何停下来?
  • UNIX下如何添加自启动程序?
  • 寻找高人!如何才能让娇气的UNIX重新启动?
  • 请问如何制作Solaris Unix的安装软盘(用于启动安装)?
  • unix无法启动 在线等高手帮忙
  • 为什么我安装sco openserver unix5.05的时候用光驱不能启动?
  • 不小心把home下的bin文件夹删除了,如何才能启动unix呀?急用
  • 急:unix机器自动重新启动
  • 求救,大家来帮忙(关于SCO UNIX5。05)启动的问题
  • unix如何设置让一个程序自动启动
  • Unix下Apache启动出错,原因如下??
  • 在Unix下怎么做一个系统一启动就加载的程序?
  • 在UNIX/C环境下怎么定时启动一个函数?
  • UNIX rc3.d 启动的服务,环境变量不正确
  • java命名空间java.util.regex类pattern的类成员方法: unix_lines定义及介绍
  • 刚刚接触Unix系统和Unix编程。急需Unix下多线程程序设计和网络Socket程序设计方面的资料。
  • unix/Linux下c++ boost thread库读写锁介绍
  • 关于UNIX的历史 : 1973年,K.Thompson和D.M.ritchie,用C改写UNIX。那么,在此之前,UNIX是用什么写的?
  • php将标准字符串格式时间转换成unix时间戳_strtotime
  • 没有unix系统我如何学习unix
  • php将unix时间戳转换成字符串时间函数(date)
  • unix盘哪里有下载的??哪里有比较好的unix论坛??万分感谢!!!!!!!!!
  • unix/Linux下c/c++ pthread库读写锁函数介绍
  • 急!装完unix5.06,再装win2000。重启后不能进unix.
  • UNIX特急!!!digital unix问题,请专家快来!!!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3