我们从Python开源项目中,提取了以下4个代码示例,用于说明如何使用os.path.py()。
def launch_ping(src_ip, dst_ip, username, passwd, count, timeout, qrouter, filename): cmd = 'sudo ip netns exec ' + str(qrouter) cmd += ' python ping.py --src_ip %s --dst_ip %s --username "%s" --passwd "%s" --count %d --timeout %d' % \ (src_ip, dst_ip, username, passwd, count, timeout) cmd += ' > %s 2>&1' % filename p = subprocess.Popen(cmd, shell=True) return p
def need_vendor_bundles(invoke_minversion=None): invoke_minversion = invoke_minversion or "0.0.0" need_vendor_answers = [] need_vendor_answers.append(need_vendor_bundle_invoke(invoke_minversion)) # -- REQUIRE: path.py try: import path need_bundle = False except ImportError: need_bundle = True need_vendor_answers.append(need_bundle) # -- DIAG: print("INVOKE: need_bundle=%s" % need_bundle1) # return need_bundle1 or need_bundle2 return any(need_vendor_answers)
def get_next_hop(src_info, dst_info, qrouter, params): next_hop_list = [] next_hop = None username = params['username'] passwd = params['passwd'] src_ip = src_info['ip'] dst_ip = dst_info['ip'] remote_cmd = ' ip route get %s' % dst_ip cmd = 'sudo ip netns exec ' + qrouter cmd += ' python run_nms_cmd.py --host_ip %s --username "%s" --passwd "%s" --cmd "%s" ' % \ (src_ip, username, passwd, remote_cmd) output = run_remote_cmd(cmd) a = json.loads(output) if not a['pass']: return [] json_file = params['json_file'] info = load_json(json_file) next_hop = {} for cmd in a['command_list']: if re.search('ip route get', cmd['cmd']): m = re.search('\S+\s+via\s+(\S+)', cmd['output'][0]) if m: next_hop['ip'] = m.group(1) next_hop['dev'] = 'qr-' + ip_to_intf(info, next_hop['ip']) next_hop['nms'] = intf_to_namespace(info, next_hop['dev']) break next_hop_list.append(next_hop) cmd = 'sudo ip netns exec ' + next_hop['nms'] cmd += remote_cmd output = run_remote_cmd(cmd).split('\n') prev_nms = next_hop['nms'] next_hop = {} m = re.search('\S+\s+dev\s+(\S+)', output[0]) if m: next_hop['dev'] = m.group(1) next_hop['nms'] = prev_nms next_hop_list.append(next_hop) return next_hop_list