当前位置: 首页 > news >正文

重庆市城市建设综合开发办网站双人网页游戏网站

重庆市城市建设综合开发办网站,双人网页游戏网站,wordpress 众筹网站,优化营商环境的金句linux下有一个强大的命令|(管道提示符).它的作用是将前一个命令的结果交给后一条命令并作为后一条命令的输入.而linux下的大多数命令也都支持这种方式.可是当笔者写完一个php的命令行小程序以后,对于怎样获得前一个命令的结果却陷入了僵局.难道php不支持这样的操作?于是又开始…linux下有一个强大的命令|(管道提示符).它的作用是将前一个命令的结果交给后一条命令并作为后一条命令的输入.而linux下的大多数命令也都支持这种方式.可是当笔者写完一个php的命令行小程序以后,对于怎样获得前一个命令的结果却陷入了僵局.难道php不支持这样的操作?于是又开始问google大叔.找来找去,都是说php的命令行模式是怎么回事儿,也没有和我想知道的问题相关的资料.难道是俺的关键字用的不对?或者是传说的RP问题?google无果以后,开始想找人求助.我认识的做php的朋友中,谁可能会做过命令的程序呢,然后问.问来问去都说没玩过或者不熟悉.又是无果,哎,真急死人.看来只能靠自己了,于是开始自救.于是开始研究php的argc和argv,试来试去都不行.开始静下心来细细思考怎么回事儿.隐约记得以前玩perl的时候,想获得输入用的是一个来完成的.而代表从标准输入读东西的意思.再想想管道符的作用不就是代替人输入东西嘛.思路打开了,于是有了下面这段小程序:[rainbirdrainbird-desktop ~]$cata.php#!/usr/bin/php -q$fhfopen(php://stdin,r);echofgets($fh);fclose($fh);?[rainbirdrainbird-desktop ~]$echoaaaaa|./a.phpaaaaa      呵呵,成功搞定!但是这样的话,有一个小问题:[rainbirdrainbird-desktop ~]$tail /etc/passwd|./a.phpcouchdb:x:106:113:CouchDB Administrator,,,:/var/lib/couchdb:/bin/bash一次只能读入一行!看来是fgets的问题了.怎么样才可以一下子把所有的内容读过来呢?在使用php的过程中,我知道,如果想一下子把一个文件的内容放在一个变量而不是数组的话用:file_get_contents.但是它是对文件操作的,不知道是不是适合标准输入.不知道可以试一下嘛.看结果:[rainbirdrainbird-desktop ~]$cat a.php#!/usr/bin/php -qecho file_get_contents(php://stdin);?[rainbirdrainbird-desktop ~]$tail /etc/passwd|./a.phpcouchdb:x:106:113:CouchDB Administrator,,,:/var/lib/couchdb:/bin/bashhaldaemon:x:107:114:Hardware abstraction layer,,,:/var/run/hald:/bin/falsespeech-dispatcher:x:108:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/shkernoops:x:109:65534:Kernel Oops Tracking Daemon,,,:/:/bin/falsesaned:x:110:116::/home/saned:/bin/falsepulse:x:111:117:PulseAudio daemon,,,:/var/run/pulse:/bin/falsegdm:x:112:119:Gnome Display Manager:/var/lib/gdm:/bin/falserainbird:x:1000:1000:rainbird,,,:/home/rainbird:/bin/bashsshd:x:113:65534::/var/run/sshd:/usr/sbin/nologinpostfix:x:114:122::/var/spool/postfix:/bin/false真帅!搞定.就这么简单的几行,php就简单实现了cat的功能:[rainbirdrainbird-desktop ~]$./a.phproot:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/bin/shbin:x:2:2:bin:/bin:/bin/shsys:x:3:3:sys:/dev:/bin/shsync:x:4:65534:sync:/bin:/bin/sync......对php开始由衷的折服.php也开始融入了linux一切皆文件的思想,竟可以把标准输入作为一个文件来处理.细细想来:其实这是一个简单的小问题,只是因为没有做过这样一个事情,思维受到了限制,当接触这样一个需求的时候一下子不知道应该怎么思考.用perl,python,ruby做程序的同学们再遇到这样的需求知道怎么处理了吧:)这个小经历再次印证:程序是算法的表达方式,算法是灵魂,有思路才有出路.
http://www.zqtcl.cn/news/847356/

相关文章:

  • 网站开发行业分析wordpress 粘贴表格
  • 网站开发的招标参数网络科技公司网站源码下载
  • 属于网络营销站点推广的是seo好wordpress主题
  • j2ee只做网站阿里企业邮箱免费
  • 做企业网站需要买什么资料室内设计学徒
  • 网站新增关键词设计公司logo公司文化
  • 怎么写一个网站程序农产品网站如何做地推
  • 北京网站优化服务商有了域名怎么建网站
  • 转运网站开发国外永久免费crm系统
  • 免费网站建设网站wordpress扁平化中文主题
  • 外贸企业网站策划个人简历模板免费可编辑
  • 自助建站免费建站免费建站工具有哪些
  • 海外网站导航前端静态网站开发
  • 德庆网站建设价格网站的月度流量统计报告怎么做
  • 网站哪里买外链品牌网站设计步骤
  • 网站推广 优帮云淄博网站制作公司
  • 二手书哪个网站做的好wordpress 直排主题
  • 网站开发风险分析做情诗网站
  • 怎样可以快速增加网站的反链网络广告平台有哪些
  • 学校网站源码小游戏网站审核怎么做
  • 西乡网站建设政务网站开发协议
  • 美食网站开发环境北京app网站建设
  • 郑州网站建设推广渠道重庆网站建设公司下载
  • 宜宾营销型网站建设网站建设需要什么资质
  • 重庆建网站有哪些学跨境电商要多少钱
  • 上海建设钢结构工程网站深圳电器公司排名
  • 淄博网站建设找淄深网江苏省建设斤网站
  • 免费行情软件app网站红色西安做网站印象网络
  • 宁波网站建设小程序开发聊城wap网站建设
  • 陇南网站网站建设泰安网站的建设