ruby读取源代码自身的一种方法
2024-10-08 04:28:32
我们知道ruby中如果源代码中一行开头(必须在行的开头)有__END__标示,则表示下面的都是数据行,可以用IO对象DATA来访问这些行.但是如果我们用DATA.rewind一下的话,就可以将文件流指向文件开头鸟,然后就可以访问源代码本身啦:
#!/usr/bin/ruby DATA.rewind i=1 DATA.each_line do |line| puts "#{'%03d' % i} #{line}" i+=1 end __END__
运行结果:
wisy@wisy-ThinkPad-X61:~/src/ruby_src$ ./a.rb 001 #!/usr/bin/ruby 002 003 DATA.rewind 004 i=1 005 DATA.each_line do |line| 006 puts "#{'%03d' % i} #{line}" 007 i+=1 008 end 009 __END__
喜欢C语言的童鞋可以用C重写下
最新文章
- ZOJ Problem Set - 1365 Mileage Bank
- Docker-compose
- sublime插件@sublimelinter安装使用
- 使用session防止重复提交
- Action<;>;和Func<;>; 委托【代理】
- SmartWiki文档在线管理系统简介
- 从此爱上iOS Autolayout
- flex4 s:Datagrid <;s:typicalItem
- 有趣的数-回文数(Palindrome number)
- localtunnel.me 原理流程浅析
- HDU 2896 AC自动机 裸题
- WCF的回调使用实例代码说明
- UESTC_魔法少女小蟹 CDOJ 710
- js document
- 配置SESSION超时与请求超时
- 总结JS中string、math、array的常用的方法
- face detection[Face R-FCN]
- 【Linux】linux中文本操作利器grep,awk,sed
- TensorRT优化过程中的dropout问题
- 论参数self