6 杰瑞26

尚未进行身份认证

架构师、脚本语言专家;精通Python,Shell,正则表达式;熟悉Java, C, Tcl, Ruby, Scala, Perl等多种编程语言,在性能,开源,硬件及自动化测试方面也有非常丰富的经验

等级
TA的排名 763

Python实现反复执行某个命令的简单处理办法

现实中,会需要反复以需要的时间间隔执行某个命令。这个时候借助time.sleep和sys.argv提供了一种简单的解决办法。importtimeimportosimportsysdefmain(cmd,inc=60):whileTrue:os.system(cmd)time.sleep(inc)if__name__=...

2019-03-31 18:52:11

sed往指定位置插入变量的小技巧

sed中的常用往后插入的语法,比如往匹配到的行后面添加内容,可以使用-i参数和a参数来往后插入[root@linux~#]sed-i'/Pattern/a\String'FileName如果要插入的是个变量,则需要将注意两点:使用双引号来替代单引号 使用反斜杠对\进行转译下面就是个示例。示例文件:1.txt,要往第四行后面添加字符串var="NewLineHer...

2019-03-31 18:05:31

Linux要彻底删除某目录下的所有文件的小技巧

我们都知道,要删除某目录下的文件,可以使用[root@linux~]rm-rf/dir/*但有的时候,上面的命令并不能删除.开头的文件,比如:.swp,.b.log,.a.txt这个时候,就要借助find组合命令来删除了。先find,再通过管道传给rm命令来删除:[root@linux~]find/dir-typef|xargsrm-rf{...

2019-03-31 17:30:46

Python中将print中内容定位到文件

当然logging模块完成这种任务,设置消息的级别,根据不同的级别将信息内容定位到文件中。如果不借助于类似于这种模块,其实print也是可以定位到文件中。而且Python2和Python3稍微有些差距。Python2的做法>>>logfile=open(r'D:\\1.log','a')>>>logtext='2019-03-31...

2019-03-31 10:48:51

Linux从符合条件的所有文件中过滤出某一行

比如说,要找出/var/log目录下所有.log文件中含error的内容的行,并将其合并到一个文件中。这种场景就很实用,也很常见。这个时候可以使用一个简单的命令完美的完成这个任务。[root@linux~]find/var/log-name'*.log'|xargscat|grep-i'error'>all_error.log1.先用find命令,找...

2019-03-31 09:48:43

Python从列表中找出所有元素索引的几种方法

在列表中使用index方法获取的只是第一个索引,比如想获取列表中的字符'A'>>>lst=['A',1,4,2,'A',3]>>>lst.index('A')0如果想获取所有'A'元素的索引列表,可以借助于下面的方法方法一:常用方法>>>defget_index1(lst=None,item='...

2019-03-31 09:35:11

Python格式化14位时间输出

很多场景中会要求14位时间格式,比如20190331102020,即年月日时分秒拼接在一起的输出。实现起来也很简单。当前时间的格式:>>>fromdatetimeimportdatetime>>>fmt='%Y%m%d%H%M%S'>>>datetime.now().strftime(fmt)'20190330...

2019-03-30 22:26:56

Python格式化输出数字字符串在随机选号中的应用

现实中经常碰到这种场景,比如数字字符串列表['01','02','03','04','05','06','07','08','09','10','11','12','13','14']上面的数据有两个特点:1.上面的数字首先是顺序,从1到14递增 2.每个都两位字符串,不够的话,前面补齐0要生成上面的列表,可用格式化字符串来完成。能想到比较酷的实现...

2019-03-30 22:03:10

Shell中如何删除首行和尾行

在Shell脚本中,要删除首行和尾行,可以使用一条命令很好实现>>>sed-n'1!P;N;$q;D'FileName

2019-03-13 21:32:41

Python轻松实现对英文文章单词总数统计

一篇英文文章,要统计其中单词总数。在Python中可以很轻松的实现,假如英文文章为this.txt,里面的内容就是importthis这个彩蛋的内容。>>>importthisTheZenofPython,byTimPetersBeautifulisbetterthanugly.Explicitisbetterthanimplici...

2019-03-13 21:13:04

Python中按值来获取指定的键

Python字典中的键是唯一的,但不同的键可以对应同样的值,比如说uid,可以是1001。id同样可以是1001。这样的话通过值来获取指定的键,就不止一个!而且也并不太好处理。这里同样提供两种思路来处理。方法一:>>>dct={'Name':'Alice','Age':18,'uid':1001,'id':1001}>>>de...

2019-02-24 20:27:55

Python中按键来获取指定的值

Python中按键来获取值,相对来说要容易些,毕竟只需要dict[key]就可以找到,但里面同样有个问题,如果其中的键不存在的话,会抛出异常,如果不用try...except...等异常处理机制的话,程序就会中断!这里提供两种很安全,很健壮的处理方法。 方式一:dict[key]+判断>>>dct={'Name':'Alice','Age':18,'...

2019-02-24 20:06:01

tr命令在统计英文单词出现频率中的妙用

tr命令我们很清楚,可以删除替换,删除字符串。在英文中我们要经常会经常统计英文中出现的频率,如果用常规的方法,用设定计算器一个个算比较费事,这个时候使用tr命令,将空格分割替换为换行符,再用tr命令删除掉有的单词后面的点号,逗号,感叹号。先看看要替换的this.txt文件TheZenofPython,byTimPetersBeautifulisbetterthanu...

2019-02-24 19:42:10

用join -a1来合并两个文件

要合并以下两个文件,一起合并在一起,合并到1.txt中#1.txtJerry20Alice30David40#2.txtJerrymanAlicewomanDavid40合并的后的1.txtJerry20manAlice30womanDavid40上面的文件特点是有相同的,则合并,第二列缺少内容的。这个时候使用join-a11...

2019-02-22 22:47:52

用random.uniform来生成6位的经纬度值

random模块的uniform(x,y)方法,会生成一个介于x,y之间的实数,先来看下该函数的帮助文档 >>>help(random.uniform)Helponmethoduniforminmodulerandom:uniform(a,b)methodofrandom.RandominstanceGetarandomnum...

2019-02-22 22:14:19

一次export PATH=/New/Dir的导致的血案

一个同事找我帮他定位,为什么他的LINUX服务器很多的命令都使用不了,提示(commandnotfound),而且更要命的是很多系统服务,脚本都跑不了。问了下,你之前做了些什么操作呢?他说也做什么操作啊,只不过在/etc/profile文件里面增加了exportPATH,又问,你怎么设置的呢?得到的答案是:[root@localhost~]#vim/etc/profile...

2019-02-22 21:38:43

用expect命令实现登录远端服务器执行简单命令的脚本

很多时候,需要用expect命令实现登录远端服务器执行简单命令,诸如:重启服务器,ftp,ls,scp等命令。里面涉及到输入密码的交互式场景,这个时候expect命令的巨大功效就出来了,下面是一个比较经典脚本实现:#!/usr/bin/tclshpackagerequireExpectsethost_ip1[lindex$argv0]sethost_usr[li...

2019-02-13 21:36:39

Python去除字符串前后空格的几种方法

其实如果要去除字符串前后的空格很简单,那就是用strip(),简单方便>>>'ABC'.strip()'ABC'如果不允许用strip()的方法,也是可以用正则匹配的方法来处理。>>>s1='ABC'>>>s2='ABC'>>>s3='ABC'>&gt

2019-02-13 21:18:48

Python一个字符串生成器

在做测试的测试,经常会碰到字符串的边界值进行测试,这个时候就需要造数据,比如说要生成只含字母或数字的256位任意字符串,如果一个个输入的话耗时,也很不明智。这个时候其实自己可以写个简单的字符串生成器函数来处理类似的需要。下面是简单的字符串生成器函数:>>>defstr_generator(n):...importstring...import...

2019-02-13 20:58:45

Python中三元表达式介绍

要介绍Python的三元表达式,可以先看看其他编程语言比如C,JAVA中应用:publicclassjava{ publicstaticvoidmain(String[]args){ intx=100; inty=101; intMAX=(x>y)?x:y; System.out.println("MAX:"+MAX); ...

2019-02-12 21:54:09

查看更多

勋章 我的勋章
    暂无奖章