python 批量ping脚本不能用os.system】的更多相关文章

os.system(cmd)通过执行命令会得到返回值. ping通的情况下返回值为0. ping不通的情况: 1.请求超时,返回值1 2.无法访问目标主机,返回值为 0,和ping通返回值相同   所以建议不用os.system…
最近在https://pypi.python.org/pypi/mping/0.1.2找到了一个python包,可以用它来批量ping服务器,它是中国的大神写的,支持单个服务器.将服务器IP写在txt或json里都可以. 具体用法有中文文档,感谢作者youfou 这里我改了几个字,方便我这种英文不好的同学使用 mping.py #!/usr/bin/env python3 # coding: utf-8 import argparse import ctypes import json impo…
根据鸟哥的ping脚本,我重新修改了一下.用到的知识有:read.Linux按行读取.shell输出效果调整等 其中Linux按行读取文件比较重要,可参看文下链接 1 脚本功能: 批量ping当前路径下文件里面的ip地址,ip地址必须一行行填写, 1只需要输入存放ip地址的文件名, 2 然后选择执行速度. 3 ping的结果就会放在当前路径下的PingResult.csv文件里 2 注意: 请根据提示运行脚本,确保脚本有执行权限,不能在window上运行 #!/bin/bash # Progra…
#alltest.py中内容如下import unittest,osdef all(): #path="D:\\study\\python_api_test\\test1203" #手动添加路径 path=os.getcwd() #获取路径 files=unittest.defaultTestLoader.discover(path, pattern="hui*.py", top_level_dir=None) lastall=unittest.TestSuite(…
当前有shell个脚本/tmp/test.sh,内容如下: #!/bin/bashexit 11 使用Python的os.system调用,获取返回值是: >>> ret=os.system("/tmp/test.sh")>>> ret2816 查看Manual没有说明.网上找到解释如下: os.system(cmd): 该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码,高位为脚本的退出状态码.如果我们需要获得…
先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 192.168.130.4 192.168.130.5 192.168.130.6 192.168.130.7 192.168.130.8 192.168.130.9 192.168.130.10 192.168.130.11 192.168.130.12 192.168.130.13 192.16…
0x00 将IP列表放到txt文件内 先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 192.168.130.4 192.168.130.5 192.168.130.6 192.168.130.7 192.168.130.8 192.168.130.9 192.168.130.10 192.168.130.11 192.168.130.12 19…
参考: python调用shell脚本的两种方法| Jeff的妙想奇境 已解决--求教python如何调用.sh文件- 查看主题• Ubuntu中文论坛 CODE #!/usr/bin/env python3 import os def main(): os.system("sh button_communicate.sh") # 调用button_communicate.sh if __name__ == '__main__': main() 2017/3/2…
最近工作需要,写了一个Python小脚本,分享给大家,因为公司的IP用的差不多了,然后离职人员的IP有没有及时删除,导致没多少IP用了,所以做了一个python脚本跑了跑,清出来一堆ping不通的IP,然后对照其他的数据表,把可用的IP清理出来,好了,废话不多说,上代码:(代码很简单,就不做注释了) 输入起始查询IP和终止查询IP 然后脚本会在这两个IP段之间把ping通和ping不通的IP分别写入到两个TXT文件中 # coding=utf-8 import os,time import sy…
今天我们来尝试使用python 的os.system来执行系统命令 可以使用如下方法: import osprint os.system('ping www.baidu.com') 输出的结果是:64 bytes from 223.26.58.21: icmp_seq=0 ttl=245 time=36.798 ms64 bytes from 223.26.58.21: icmp_seq=1 ttl=244 time=37.561 ms64 bytes from 223.26.58.21: ic…
通过os.system函数调用其他程序 预备知识:cmd中打开和关闭程序 cmd中打开程序 a.打开系统自带程序 系统自带的程序的路径一般都已加入环境变量之中,只需在cmd窗口中直接输入程序名称即可. 以notepad为例,直接在cmd窗口中输入notepad后回车即可打开. b.打开自己安装且没有加入环境变量的程序 以网易云音乐为例,在cmd窗口中需要输入完整的程序路径 "D:\Program Files (x86)\Netease\CloudMusic\cloudmusic.exe"…
Python调用Shell,有两种方法:os.system(cmd)或os.popen(cmd)脚本执行过程中的输出内容.实际使用时视需求情况而选择. 两者的区别是: os.system(cmd)的返回值是脚本的退出状态码,只会有0(成功),1,2 os.popen(cmd)返回脚本执行的输出内容作为返回值 比如计算一个文件的md5值: os.system(cmd): 该方法在调用完shell脚本后,返回一个信号代码. >>> os.system('md5sum /root/all.sq…
1>python调用Shell脚本,有两种方法:os.system()和os.popen(),前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的输出内容.>>>help(os.system)Help on built-in function system in module posix:system(...)    system(command) -> exit_status    Execute the command (a string) in a subshe…
[python's os.system&os.spawn] os.system会新建一个子shell,在子shell中执行传入的sh脚本.os.spawn用于执行一个bin,产生一个子进程.所以这2个东西表面看来是不一样的. 不过通过精心构造的sh脚本,也可以通过os.system实现os.spawn的功能,但是麻烦. 参考:http://docs.python.org/2.7/library/os.html…
os.system 1.如果想在cmd执行python脚本,可以直接用如下指令 python [xx.py绝对路径] 比如我写了个hello.py的脚本,在脚本里面写入内容:print("hello world!"),放到d盘目录路径为:d:\hello.py 2.os.system用来执行cmd指令,在cmd输出的内容会直接在控制台输出,返回结果为0表示执行成功 注意:os.system是简单粗暴的执行cmd指令,如果想获取在cmd输出的内容,是没办法获到的 os.popen 1.如…
目录 1.1 踩坑案例 1.2 填坑解法 1.3 坑位分析 1.4.1 技术关键字 1.5 填坑总结 2. 前坑回顾 2.1 Linux中, 子进程拷贝父进程哪些信息 2.2 Agent常驻进程选择>60000端口的意义 代码示例支持 平台: Centos 6.3 Python: 2.7.14 Github: https://github.com/baidu/CUP 1.1 踩坑案例 今天的坑不仅包括裸用os.system还包括裸用相关的家族: os.popen subprocess家族 sub…
在日常的工作中,我们通常会有去探测目标主机是否存活的应用场景,单个的服务器主机可以通过计算机自带的DOS命令来执行,但是业务的存在往往不是单个存在的,通常都是需要去探测C段的主机(同一个网段下的存活主机),这样使用DOS来进行操作是不可取,探测的速度太慢了,不满足实际需要.一般批量的操作需要使用脚本进行一键部署执行,本文主要通过使用Python语言来实现批量ping的操作(使用多线程实现Python批量处理) Python版本 :Python3 使用的第三方库:subprocess, loggi…
最近遇到os.system()执行系统命令的情况,上网搜集了一下资料,整理如下,以备不时之需,同时也希望能帮到某些人. 一.python中的 os.system(cmd)的返回值与linux命令返回值(具体参见本文附加内容)的关系 大家都习惯用os.systemv()函数执行linux命令,该函数的返回值十进制数(分别对应一个16位的二进制数).该函数的返回值与 linux命令返回值两者的转换关系为:该函数的返回值(十进制)转化成16二进制数,截取其高八位(如果低位数是0的情况下,有关操作系统的…
(1) os.system # 仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息 system(command) -> exit_statusExecute the command (a string) in a subshell. # 如果再命令行下执行,结果直接打印出来 >>> os.system('ls') .CHM bash document media py-django video .wmv books downloads Pictures python a…
批量IP自动ping脚本ping.sh 在同一目录新建一个名为pingip的文件,并以每行一个IP的方式罗列.使用sh命令执行ping.sh #!/bin/bash IP_LIST=`cat pingip` for i in ${IP_LIST} do $i > /dev/null` ];then echo "ping $i fail" else echo "ping $i ok" fi done…
import sys import getopt import os import multiprocessing def list_all_file(path): """ list all files of a directory :param path: :return: """ file_list = [] for (path, _, files) in os.walk(path): for filename in files: file_…
os.system() 和 os.popen() 概述 os.popen() 方法用于从一个命令打开一个管道. 在Unix,Windows中有效 语法 popen()方法语法格式如下: os.popen(command[, mode[, bufsize]]) 参数 command -- 使用的命令. mode -- 模式权限可以是 'r'(默认) 或 'w'. bufsize -- 指明了文件需要的缓冲大小:0意味着无缓冲:1意味着行缓冲:其它正值表示使用参数大小的缓冲(大概值,以字节为单位).…
Python  os.path.dirname(__file__) 与 Python os.path.abspath(__file__) 的区别 os.path.abspath(__file__)返回的是.py文件的绝对路径(完整路径)os.path.dirname(__file__)返回的是.py文件的目录 import os base_path = os.path.dirname(os.path.abspath(__file__)) driver_path = os.path.abspath…
本文主要利用python的相关模块进行批量ping ,测试IP连通性. 下面看具体代码(python3): #!/usr/bin/env python#-*-coding:utf-8-*- import reimport subprocessfrom io import StringIOimport multiprocessingimport timeimport sysdef check_alive(ip): result = subprocess.call('ping -w 1000 -n…
[python中os.system()的返回值] 如果第三方程序返回的是布尔型返回值,os.system会将true转为1,false转为0进行返回. 问题: /bin/xxx.py是一个返回码为1的程序. 当python 程序使用os.system(”./bin/xxx.py”) 这样调用的时候, 成功运行后os.system 的返回值出现了问题,变成了256 ,也就是0×100.而不是正常应该返回的1. 解决: 查阅了文档发现os.system()的返回为: On Unix, the ret…
os.system(返回值为0,1,2)方法 0:成功 1:失败 2:错误 os.system默认阻塞当前程序执行,在cmd命令前加入start可不阻塞当前程序执行. 例如: import os os.system(r"start E:\TX\qq.exe") 如路径有空格,单引号包上双引号就OK os.popen(可将cmd输出作为返回值)方法 如出入命令路径有空格,将“”一起传入os.system即可 例: '"C:\Program Files (x86)"'…
Python执行系统命令的方法 os.system(),os.popen(),commands 最近在做那个测试框架的时候发现 Python 的另一个获得系统执行命令的返回值和输出的类. 最开始的时候用 Python 学会了 os.system() 这个方法是很多比如 C,Perl 相似的. os.system('cat /proc/cpuinfo') 但是这样是无法获得到输出和返回值的,继续 Google,之后学会了 os.popen(). output = os.popen('cat /pr…
从使用os.system)在python命令(重定向标准输入输出 python 标准输出stdout stdio os.system通常我可以通过改变sys.stdout的值在python更改标准输出.然而,这似乎只影响打印那么,有没有什么办法可以抑制方案是通过使用os.system在python运行()命令的输出(控制台),? 谢谢本文地址 :CodeGo.net/172881/ ---------------------------------------------------------…
服务器总是一下子买了很多的段的ip.通过绑定后,也不知道这些ip是否绑定成功,所以就写了一个shell脚本,把ip输好,批量ping一下,看是不是都能ping通. 脚本如下: 此外.还有一个ip文件,里面放的都是ip 名为allip 我们来运行一下,看一下结果: 除了8.8.%  他显示 ping 其他 失败.的确这些ip是ping不通.好了.效果就这些,我们来看一下他的原理 先贴一下程序: #! /bin/bashfor i in `cat allip`doping=`ping -c 1 $i…