搜索
查看: 613|回复: 7

[Perl] [perl one-lines] 笔记一

[复制链接]

5

主题

24

帖子

161

积分

版主

Rank: 7Rank: 7Rank: 7

积分
161
发表于 2016-9-30 22:46:58 | 显示全部楼层 |阅读模式
本帖最后由 侠客行 于 2016-10-1 22:45 编辑

perl one-lines就是所谓的perl单行指令,这种技巧不仅能简化很多操作,而且看起来也十分酷炫,想成为perl魔术师,这种技巧不可不学。快来和我一起学学perl one-lines吧。

简介:
perl one-lines的基本格式是:
[Perl] 纯文本查看 复制代码
perl -X 'YYY' filename

其中:1、-X时调用命令的参数
        2、'YYY'是具体语句,记得用单引号引起来
        3、filename可以为空,此时使用标准输入,可以用来调试。如果不为空,则读入 对应文件

===============================================================

参数:
       -e : 执行命令
       -p : 十分重要
[Perl] 纯文本查看 复制代码
while( <> ) {
         #你输入的代码在这里执行
} continue {
         print or die "-p failed: $! \n";
}
利用<>读入进行修改后自动输出
       -n : 类似-p
[Perl] 纯文本查看 复制代码
while( <> ) {
         #执行你输入的命令
}
只是不会自动输出
       -E : 同-e,只是可以执行Perl 5.10之后才有的功能,如say
       -l : 输入后自动chomp,输出时自动加一个"\n"

================================================

举几个栗子:
1、在每行后面加一空行
[Perl] 纯文本查看 复制代码
perl -pe ' $_ .= "\n" ';
或者
[Perl] 纯文本查看 复制代码
perl -nE say file;
必须使用-E,否则无法使用say

2、去掉所有空行
[Perl] 纯文本查看 复制代码
perl -lne 'print if length';
必须使用-l,否则空行的换行符也会占据一个位置

3、把字母间的空格加倍
[Perl] 纯文本查看 复制代码
perl -pe 's/ /  /g' 


4、在每个字母间加入一个:
[Perl] 纯文本查看 复制代码
perl -pe 's//:/g'




上一篇:perl one line 中 -00 的使用
下一篇:[perl one-lines] 笔记二
回复

使用道具 举报

7

主题

34

帖子

192

积分

注册会员

Rank: 2

积分
192
发表于 2017-1-6 15:41:38 | 显示全部楼层
perl one-lines单行命令,之前看到群主在用,顿时感觉这perl一些代码实在酷炫:短小精悍

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎关注博客: 生信客部落
回复 支持 1 反对 0

使用道具 举报

565

主题

979

帖子

3291

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3291
发表于 2016-9-30 23:22:55 来自手机 | 显示全部楼层
perl预定义的一百多个内置变量需要了解一下
回复 支持 反对

使用道具 举报

5

主题

24

帖子

161

积分

版主

Rank: 7Rank: 7Rank: 7

积分
161
 楼主| 发表于 2016-10-1 08:40:34 | 显示全部楼层
Jimmy 发表于 2016-9-30 23:22
perl预定义的一百多个内置变量需要了解一下

嗯,这本书后面有专门的介绍,等我看完也会把笔记整理出来的
回复 支持 反对

使用道具 举报

6

主题

26

帖子

173

积分

版主

Rank: 7Rank: 7Rank: 7

积分
173
发表于 2016-10-18 12:46:31 | 显示全部楼层
挺好玩的,这个会直接读取文件数据吗?-pe   -nE
“Nothing in Biology Makes Sense Except in the Light of Evolution”  --Theodosius Dobzhansky
回复 支持 反对

使用道具 举报

0

主题

7

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2016-11-17 09:31:17 | 显示全部楼层
侠客行 发表于 2016-10-1 08:40
嗯,这本书后面有专门的介绍,等我看完也会把笔记整理出来的

哪本书?
回复 支持 反对

使用道具 举报

5

主题

24

帖子

161

积分

版主

Rank: 7Rank: 7Rank: 7

积分
161
 楼主| 发表于 2016-11-17 22:41:39 | 显示全部楼层

<PERL ONE-LINERS : 130 Programr That Get Things Done> by Peteris Krumins
回复 支持 反对

使用道具 举报

0

主题

7

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2016-11-24 15:29:00 | 显示全部楼层

谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|关于我们|手机版|小黑屋|生信技能树    

GMT+8, 2017-5-24 01:04 , Processed in 0.030226 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.