亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? popen.py

?? PHP寫的圖片查看器
?? PY
字號:
## Copyright (C) 2000-2001 The ViewCVS Group. All Rights Reserved.## By using this file, you agree to the terms and conditions set forth in# the LICENSE.html file which can be found at the top level of the ViewCVS# distribution or at http://viewcvs.sourceforge.net/license-1.html.## Contact information:#   Greg Stein, PO Box 760, Palo Alto, CA, 94302#   gstein@lyra.org, http://viewcvs.sourceforge.net/## -----------------------------------------------------------------------## popen.py: a replacement for os.popen()## This implementation of popen() provides a cmd + args calling sequence,# rather than a system() type of convention. The shell facilities are not# available, but that implies we can avoid worrying about shell hacks in# the arguments.## -----------------------------------------------------------------------#import osimport sysdef popen(cmd, args, mode, capture_err=1):  # flush the stdio buffers since we are about to change the FD under them  sys.stdout.flush()  sys.stderr.flush()  r, w = os.pipe()  pid = os.fork()  if pid:    # in the parent    # close the descriptor that we don't need and return the other one.    if mode == 'r':      os.close(w)      return _pipe(os.fdopen(r, 'r'), pid)    os.close(r)    return _pipe(os.fdopen(w, 'w'), pid)  # in the child  # we'll need /dev/null for the discarded I/O  null = os.open('/dev/null', os.O_RDWR)  if mode == 'r':    # hook stdout/stderr to the "write" channel    os.dup2(w, 1)    # "close" stdin; the child shouldn't use it    ### this isn't quite right... we may want the child to read from stdin    os.dup2(null, 0)    # what to do with errors?    if capture_err:      os.dup2(w, 2)    else:      os.dup2(null, 2)  else:    # hook stdin to the "read" channel    os.dup2(r, 0)    # "close" stdout/stderr; the child shouldn't use them    ### this isn't quite right... we may want the child to write to these    os.dup2(null, 1)    os.dup2(null, 2)  # don't need these FDs any more  os.close(null)  os.close(r)  os.close(w)  # the stdin/stdout/stderr are all set up. exec the target  try:    os.execvp(cmd, (cmd,) + tuple(args))  except:    # aid debugging, if the os.execvp above fails for some reason:    import string    print "<h2>exec failed:</h2><pre>", cmd, string.join(args), "</pre>"    raise  # crap. shouldn't be here.  sys.exit(127)def pipe_cmds(cmds):  # flush the stdio buffers since we are about to change the FD under them  sys.stdout.flush()  sys.stderr.flush()  prev_r, parent_w = os.pipe()  null = os.open('/dev/null', os.O_RDWR)  for cmd in cmds[:-1]:    r, w = os.pipe()    pid = os.fork()    if not pid:      # in the child      # hook up stdin to the "read" channel      os.dup2(prev_r, 0)      # hook up stdout to the output channel      os.dup2(w, 1)      # toss errors      os.dup2(null, 2)      # close these extra descriptors      os.close(prev_r)      os.close(parent_w)      os.close(null)      os.close(r)      os.close(w)      # time to run the command      try:        os.execvp(cmd[0], cmd)      except:        pass      sys.exit(127)    # in the parent    # we don't need these any more    os.close(prev_r)    os.close(w)    # the read channel of this pipe will feed into to the next command    prev_r = r  # no longer needed  os.close(null)  # done with most of the commands. set up the last command to write to stdout  pid = os.fork()  if not pid:    # in the child (the last command)    # hook up stdin to the "read" channel    os.dup2(prev_r, 0)    # close these extra descriptors    os.close(prev_r)    os.close(parent_w)    # run the last command    try:      os.execvp(cmds[-1][0], cmds[-1])    except:      pass    sys.exit(127)  # not needed any more  os.close(prev_r)  # write into the first pipe, wait on the final process  return _pipe(os.fdopen(parent_w, 'w'), pid)class _pipe:  "Wrapper for a file which can wait() on a child process at close time."  def __init__(self, file, child_pid):    self.file = file    self.child_pid = child_pid  def eof(self):    pid, status = os.waitpid(self.child_pid, os.WNOHANG)    if pid:      self.file.close()      self.file = None      return status    return None  def close(self):    if self.file:      self.file.close()      self.file = None      return os.waitpid(self.child_pid, 0)[1]    return None  def __getattr__(self, name):    return getattr(self.file, name)  def __del__(self):    if self.file:      self.close()

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人性生交大片免费看中文| 在线观看91视频| 欧美mv日韩mv| 久久se这里有精品| 久久久久成人黄色影片| 成人免费电影视频| 亚洲影视在线播放| 欧美高清性hdvideosex| 另类调教123区 | 中文字幕乱码久久午夜不卡| 成人性生交大片免费看视频在线| 中文字幕一区二| 日本高清不卡一区| 免费高清视频精品| 久久久亚洲精品一区二区三区| 成人视屏免费看| 亚洲午夜免费福利视频| 欧美v日韩v国产v| 东方aⅴ免费观看久久av| 亚洲欧美另类小说| 日韩午夜激情av| 91在线国内视频| 蜜臀av一区二区| 国产精品福利一区二区| 欧美日韩精品欧美日韩精品一| 国产美女久久久久| 亚洲精品国产a| 精品第一国产综合精品aⅴ| 色综合久久综合| 精彩视频一区二区三区| 一区二区三区免费网站| 精品日韩av一区二区| 91九色02白丝porn| 国产sm精品调教视频网站| 亚洲综合免费观看高清在线观看| 精品美女一区二区| 欧美日韩一区高清| 粉嫩久久99精品久久久久久夜 | 午夜久久久久久电影| 国产女人18毛片水真多成人如厕| 欧美日韩一级视频| www.成人网.com| 老司机一区二区| 亚洲综合在线免费观看| 中文字幕巨乱亚洲| 精品久久人人做人人爱| 欧美喷潮久久久xxxxx| 不卡欧美aaaaa| 国产美女主播视频一区| 日本视频在线一区| 亚洲福利电影网| 亚洲精品欧美专区| 国产精品久久99| 国产拍揄自揄精品视频麻豆| 欧美tickling挠脚心丨vk| 欧美三级电影在线观看| 91高清在线观看| 色综合天天综合色综合av | 欧美tk—视频vk| 日韩午夜av一区| 欧美日韩成人综合在线一区二区| 色综合网站在线| 99久久久久免费精品国产| 国产高清不卡二三区| 国模一区二区三区白浆| 精品一区二区在线视频| 免费在线观看日韩欧美| 婷婷成人综合网| 亚洲国产欧美另类丝袜| 一区二区三区四区蜜桃| 一区二区激情小说| 一区二区三区毛片| 一区二区三区 在线观看视频| 亚洲欧洲国产日韩| 国产精品久久久久精k8| 中文字幕欧美激情| 国产精品久久三区| 亚洲三级在线免费| 亚洲免费在线视频一区 二区| 亚洲欧美激情在线| 亚洲一卡二卡三卡四卡| 亚洲成a人v欧美综合天堂| 午夜精品久久久久久| 日欧美一区二区| 麻豆一区二区在线| 国产精品99久久久久| 成人av网站在线观看| 91亚洲国产成人精品一区二三| 99麻豆久久久国产精品免费优播| 一本大道av伊人久久综合| 99国产精品久久久久久久久久| 色天使色偷偷av一区二区| 欧美性色综合网| 日韩久久精品一区| 久久久精品天堂| 亚洲欧美日韩系列| 丝袜亚洲另类欧美| 国内久久精品视频| 99在线热播精品免费| 欧美三级韩国三级日本一级| 欧美一级久久久| 国产精品私人影院| 一区二区三区小说| 蜜臀va亚洲va欧美va天堂| 国v精品久久久网| 欧美体内she精高潮| 日韩亚洲欧美高清| 欧美国产精品中文字幕| 亚洲欧美色综合| 六月丁香婷婷久久| 色综合中文字幕国产| 欧美午夜电影网| 精品国产乱码久久久久久蜜臀| 国产精品久久久久久久久动漫| 亚洲在线成人精品| 高清在线观看日韩| 欧美老年两性高潮| 国产精品麻豆欧美日韩ww| 亚洲国产成人av| 国产+成+人+亚洲欧洲自线| 欧美日韩国产免费一区二区 | 欧美一级高清大全免费观看| 国产人久久人人人人爽| 午夜精品福利一区二区三区蜜桃| 国产一区美女在线| 在线观看日韩一区| 亚洲国产精品v| 久久精品国产99| 色88888久久久久久影院按摩| 欧美精品一区二区三区蜜臀| 一区二区三区资源| 成人一区二区三区视频在线观看 | eeuss鲁一区二区三区| 91精品在线麻豆| 一区二区在线观看不卡| 国产成人免费在线视频| 日韩亚洲国产中文字幕欧美| ...av二区三区久久精品| 蜜桃精品视频在线| 欧美日韩免费电影| 亚洲精品免费视频| 丁香激情综合国产| 久久久一区二区三区| 免费人成网站在线观看欧美高清| 色www精品视频在线观看| 国产精品毛片久久久久久久| 黄一区二区三区| 日韩欧美在线123| 日韩电影免费一区| 欧美老女人第四色| 午夜日韩在线电影| 欧美午夜免费电影| 亚洲最色的网站| 欧美最猛黑人xxxxx猛交| 亚洲少妇屁股交4| 成a人片国产精品| 国产精品久久久久久久久晋中 | 中文字幕乱码亚洲精品一区| 激情综合网av| 日韩欧美国产一区在线观看| 亚洲不卡在线观看| 欧美精品乱人伦久久久久久| 亚洲成人动漫一区| 欧美精品三级日韩久久| 午夜电影久久久| 欧美一区三区二区| 麻豆精品一区二区三区| 精品免费一区二区三区| 精品一区二区影视| 久久久精品蜜桃| 成人app软件下载大全免费| 国产精品毛片无遮挡高清| 成人福利在线看| 亚洲欧美精品午睡沙发| 欧美在线一区二区三区| 亚洲国产aⅴ成人精品无吗| 欧美久久婷婷综合色| 美国十次综合导航| 久久久精品国产免大香伊| 大白屁股一区二区视频| 亚洲美女屁股眼交3| 精品1区2区3区| 日韩成人av影视| 久久奇米777| 99精品视频在线播放观看| 夜夜精品视频一区二区| 欧美一卡二卡在线| 国产精品一品视频| 亚洲视频在线观看三级| 欧美日本在线看| 国产一区二区三区黄视频 | 亚洲国产精品t66y| 欧洲一区二区三区在线| 麻豆精品精品国产自在97香蕉| 久久日韩粉嫩一区二区三区| 色综合天天视频在线观看| 日韩高清在线不卡| 国产日韩av一区| 欧美伊人精品成人久久综合97| 久久国产精品无码网站|