15.1 Command-Line Arguments命令行参数
命令行参数格式:
ruby <options><-><programfile><arguments>*
options:运行参数,传给ruby的解释器
programfile:运行的文件名
arguments:传给程序的参数
第一个没有使用-或者--开头的参数被认为是options的结束。当在options后跟一个-而且没有文件名时,将从标准输入中获取程序内容。
Options
-0[octal] 0标志(数字零)指定记录的分隔字符(,如果没有数字跟随)。-00指出段落模式:记录由两个连续的缺省记录分隔字符分隔。-0777一次读入整个文件(它像个非法字符)。设置$/。
-a 当使用-n或-p时的自动分离模式,等价于在每个循环迭代器上执行$F = $_.split。
-C directory 在运行之前修改工作路径。
-c 只检查符号,不运行程序。
-copyright 打印版权信息并退出。
-d, -debug 设置 $DEBUG 和 $VERBOSE 为 true。这可以用于你的程序的额外追踪。
-e 'command' 执行做为一行Ruby源码的命令。允许几个-e,在同一程序中命令被视做多行。当-e出现时,如果程序文件被忽略,在-e命令被运行完后中止运行。程序运行时使用-e可访问旧的条件中的范围和正则表达式的行为-整数范围比较当前输入行号,正式表达式匹配$_。
-F pattern 指定用于split()的缺省输入字段分隔符($;)(影响-a选项)。
-h, -help 显示一个简短的帮助屏幕。
-I directories 指定预定义的$LOAD_PATH($:)指令。可以有多个-I选项。每个-I后可有多个用冒号:分隔的指令。在类Unix系统上是分号(;)。
-i[extension] 以替换形式编辑ARGV文件。ARGV内的每个文件名,你写入到标准输出的任何东西,都将被回储到那个文件的内容中。如果有扩展名的话,备份文件会被保留下来。
% ruby -pi. bak –e "gsub(/Perl/, 'Ruby')" *.txt
-K kcode 指定要使用的编码。当Ruby使用日语时这个选项很有用。Kcode可以是这些当中的一个: e, E for EUC; s, S 对应 SJIS; u, U 对应 UTF-8; or a, A, n, N 对应 ASCII.
-l 自动进行行尾处理;设置$的值为$/,并且对读入的行自动地进行String#chop!处理。
-n Assumes a while gets; ...; end loop around your program. For example, a simple grep command could be implemented as
% ruby –n –e "print if /wombat/" *.txt
-p Places your program code within the loop while gets; ...; print; end.
% ruby –p –e "$_.downcase!" *.txt
-r library 在运行前请求给出名字的库。
-S 查看程序文件是否使用了RUBYPATH或PATH环境变量。
-s Any command-line switches found after the program filename, but before any filename arguments or before a , are removed from ARGV and set to a global variable named for the switch. In the following example, the effect of this would be to set the variable $opt to "electric".
% ruby -s prog -opt= electric ./mydata
-T[level] 设置安全级别,执行不纯度测试(见379页)。设置$SAFE。
-v, -verbose 设置$VERBOSE为true,打开冗长模式。也打印版本号。在冗长模式中,可打印编译警告。如果命令行上没有指定文件名,则Ruby退出。
--version 显示Ruby的版本信息并退出。
-w 打开冗长模式。与-v不同,如果命令行上没有指定文件名则从标准输入读入程序。我们推荐带 –w 来运行你程序。
-W level 设置警告的级别。可有一个或两个级别(或者没指定级别),等价于-w—给出额外的警告。如果级别为1,运行在标准(缺省)警告级别上。使用-W0则不显示警告(包括使用Kernel.warn的警告)。
-X directory 在运行前更改工作目录。类似于-c directory 。
-x [directory] 从#!Ruby行取出文本,如果指定目录的话,并且要修改工作目录。
-y, -yydebug 在解析器中打开yacc调试器。
程序参数:ARGV与ARGF
ARGV.each {|arg| p arg }
$0存放的是当前运行的程序名,别名:$PROGRAM_NAME
-------------------------------决定暂告一段------转站Ruby的那些模块及CF,后面再把高级部分补上----------
相关推荐
《Programming Ruby》是一本关于Ruby编程语言的经典书籍,它的第三章深入探讨了Ruby的基本语法和核心概念。在这一章中,作者介绍了变量、常量、符号、数组、哈希等核心数据类型,以及控制流(条件语句和循环)和方法...
《Programming Ruby - The Pragmatic Programmer's Guide》第二版(2005年注释版)是一本在IT行业中享有盛誉的经典书籍,专门针对Ruby编程语言进行了深入浅出的讲解。该书不仅覆盖了Ruby语言的基础知识,还探讨了其...
《Programming Ruby 1.9》是一本经典的Ruby编程语言教程,其源代码包含了大量实例和示例,旨在帮助读者深入理解Ruby的语法、特性以及编程实践。这些源代码是学习和探索Ruby语言的重要资源,涵盖了从基础语法到高级...
"ruby--.txt"可能是一个文本文件,其中包含了Ruby的代码示例、笔记或者问题解答,通过阅读可以加深对Ruby语法和实践的理解。 "Ruby语言入门教程附实例"和"ruby-mht"文件很可能是包含实例的教程,实践是学习编程的...
1-15章 网上的 跟出版书有所不同
《Programming Ruby》是著名的Ruby语言教程,英文版的书籍旨在为全球开发者提供深入理解Ruby编程语言的途径。这本书详尽地介绍了Ruby的语法、特性、类库以及编程实践,是学习和进阶Ruby编程的宝贵资源。源代码的提供...
《Programming Ruby》是一本关于Ruby编程语言的经典著作,由Dave Thomas、Andy Hunt和Chad Fowler合著。这本书自2004年初版以来,一直是学习Ruby的首选资源,被誉为“Pickaxe”书,因其封面的图标而得名。Ruby是一种...
Since its public release in 1995, Ruby has drawn devoted coders worldwide. In 2006, Ruby achieved mass acceptance. With active user groups formed in the world’s major cities and Ruby-related ...
《Programming Ruby》被誉为是学习Ruby语言的最佳指南,这本书在IT界享有极高的声誉,被亲切地称为“镐头书”,其价值与影响力无远弗届。本书不仅详细介绍了Ruby语言的核心概念、语法结构以及编程实践,还深入探讨了...
《Programming Ruby 1.9》是由Dave Thomas、Chad Fowler以及Andy Hunt三位作者共同编写的关于Ruby编程语言的一本权威指南。这本书是对之前版本《Programming Ruby》的大幅修订版,并得到了原出版社Addison Wesley的...
Practical Programming in Tcl/Tk is described as the "bible" for Tcl programmers. It is a guide to the Tcl/Tk programming language and GUI toolkit.
《Programming Ruby》中文版第二版是一本专注于Ruby编程语言的经典教程。这本书的两个版本——高清扫描版和高清文字版,都是为了便于读者学习和查阅,其中都带有书签功能,帮助读者快速定位到相关内容。 Ruby是一种...
Python、Lua和Ruby这三种脚本语言由于其简洁性、易学性和灵活性,在游戏开发中被广泛使用。下面我们将深入探讨这些语言在游戏编程中的应用及其优势。 **Python游戏编程** Python以其清晰的语法和强大的库支持而闻名...
通过阅读《Programming Ruby 1.9 (3rd edition)》并研究提供的源码,开发者可以深入掌握Ruby 1.9的核心概念、设计模式以及最佳实践,从而提高编程效率和代码质量。这本书是Ruby开发者的必备参考资料,无论是初学者...
通过阅读《Programming Ruby》,读者不仅可以学习到Ruby的基本语法,还能深入了解其背后的哲学和设计思想,从而成为一名高效的Ruby开发者。书中的实例和练习将帮助你更好地掌握Ruby编程,提升解决问题的能力。
Grayson -- Python and Tkinter Programming -- 2000 -- code.7z
iOS 7 Programming Fundamentals: Objective-C, Xcode, and Cocoa Basics by Matt Neuburg (Author) Publisher: O’Reilly Media (October 2013) Language: English ISBN-10: 1491945575 ISBN-13: 978-...