Perl一行式:处理空白符号】的更多相关文章

perl一行式程序系列文章:Perl一行式 假如文件file.log内容如下: root x 0 0 root /root /bin/bash daemon x 1 1 daemon /usr/sbin /usr/sbin/nologin bin x 2 2 bin /bin /usr/sbin/nologin sys x 3 3 sys /dev /usr/sbin/nologin sync x 4 65534 sync /bin /bin/sync 每行后加一空行 $ perl -pe '$…
perl一行式程序系列文章:Perl一行式 获取每行最后一个字段 $ perl -alne 'print $F[$#F]' file.log 这里涉及到了选项"-a".数组@F.这里同时还会解释-F选项,它和-a常一起使用. 选项"-a"和awk的自动字段分割一样,会自动将每行数据划分为几个字段.划分字段的分隔符由-F选项指定.如果没有指定-F,则默认以空白符号进行分割(连续空格被认为是单空格). 分割后的元素全都收集到一个数组@F中,所以第一个字段的内容是$F[0…
perl一行式程序系列文章:Perl一行式 对于Perl的一行式perl程序来说,选择要输出的.要删除的.要插入/追加的行是非常容易的事情,因为print/say决定行是否输出/插入/追加/删除.虽然简单,但对于广泛应用在sed的示例还是可以拿到这里来讨论一番. 因为输出/删除/插入/追加行都是通过print/say在不同条件下的操作,所以本文只会介绍输出操作,删除/插入/追加其实都是同样的原理. 输出第一行 $ perl -lne 'print;exit' file.log 输出第13行 $…
perl一行式程序系列文章:Perl一行式 文本大小写转换 全部字符转换成大写或小写,有几种方式: # 转大写 $ perl -nle 'print uc' file.log $ perl -ple '$_ = uc' file.log $ perl -nle 'print "\U$_"' file.log # 转小写 $ perl -nle 'print lc' file.log $ perl -ple '$_ = lc' file.log $ perl -nle 'print &q…
perl一行式程序系列文章:Perl一行式 所有行的行号 $ perl -pe '$_ = "$. $_"' file.log $ perl -ne 'print "$. $n"' file.log 这里涉及了一个特殊变量$.. 这个特殊变量代表的是当前处理行的行号.对于Perl的一行式来说,通过<>隐式打开的文件句柄默认不会关闭,所以如果参数中有多个文件,进入下一个文件时行号不会重置. 例如: $ cat a.txt aaa bbb $ cat b.t…
好处:避免类初始化时大量重复的赋值语句 用到了魔法__dict__ # 一行式构造器 class Test(): # 初始化 def __init__(self, a, b, c=2, d=3, e=4, f=5): self.__dict__.update({k:v for k,v in locals().items() if k != 'self'}) # 设置 def set_option(self, *args, **kwargs): self.__dict__.update(dict(…
# 简易Web Server,可以直接快速共享文件 python -m http.server # 脚本性能分析 python -m cProfile my_script.py # 列表辗平 import itertools a_list = [[1, 2], [3, 4], [5, 6]] print(list(itertools.chain(*a_list))) # Output: [1, 2, 3, 4, 5, 6] # 一行式的构造器,避免类初始化时大量重复的赋值语句 class A:…
0.Perl书籍推荐 Perl书籍下载 密码:kkqx 下面是一些我学习Perl过程中读过完整的或部分章节的觉得好的书. 入门级别1:<Perl语言入门>即小骆驼 入门级别2:<Intermediate Perl>即羊驼 入门后复习:<beginning Perl> 系统性学习和进阶:<Pro Perl>(目前在读,是我整理.完善Perl的最佳书籍) Perl编码技巧:<Perl高效编程>(英文版Effective Perl Programmin…
perl一行式程序系列文章:Perl一行式 本文用来收集Perl一行式中涉及到的一些选项.特殊变量的说明,可以用来做速查手册. 本文会逐渐更新. 第一次学Perl一行式时,请直接忽略本文内容,并直接从后面的示例部分开始看.本文会在每一个示例中解释出现的选项.变量.函数和语法. 一行式选项 perl一行式语法: perl [-0aFlimMnps] -e 'EXPRESSION' ARGUMENTS perl [-0aFlimMnps] -E 'EXPRESSION' ARGUMENTS 其中"-…
曾经,我熟练操作grep.awk.sed,甚至自认对sed尚算精通,我一度爱上了写脚本.但是随着写脚本的次数多了,需求复杂了,我深深的感受到shell的无奈. 例如,我多次遇到过类似下面这种恶心的需求: sed ... | awk ... 其中sed要操作第2到第5行,同时awk要操作中间的第3行,在awk操作第3行的时候,sed的第2行不能丢弃. 对于shell管道来说这是不可能实现的(注:合理使用while read line能实现),因为它通过管道在各命令之间传递数据,这使得管道前面的数据…