在真正开始使用Ruby之前,您需要对命令行有一个基本的了解。因为大多数Ruby脚本没有图形用户界面,所以您将从命令行运行它们。因此,您至少需要知道如何导航目录结构,以及如何使用管道字符(如|、<;和>;)重定向输入和输出。本教程中的命令在Windows、Linux和OSX上是相同的。
到达命令行后,将显示一个提示。它通常是单个字符,如$或#。提示还可能包含更多信息,例如用户名或当前目录。要输入命令,只需键入命令并按enter键。
要学习的第一个命令是cd命令,它将用于访问保存Ruby文件的目录。下面的命令将目录更改为\scripts目录。请注意,在Windows系统上,反斜杠字符用于分隔目录,但在Linux和OS X上,使用正斜杠字符。
既然您知道了如何导航到Ruby脚本(或rb文件),现在就可以运行它们了。打开文本编辑器并将以下程序另存为test.rb。
#!/usr/bin/env ruby print "What is your name? " name = gets.chomp puts "Hello #{name}!"打开一个命令行窗口,并使用cd命令导航到Ruby脚本目录。在那里,您可以使用Windows上的dir命令或Linux或OS X上的ls命令列出文件。您的Ruby文件都将具有.rb文件扩展名。要运行test.rb Ruby脚本,请运行命令Ruby test.rb。剧本应该问你的名字并问候你。
或者,您可以将脚本配置为在不使用Ruby命令的情况下运行。在Windows上,一键式安装程序已经设置了与.rb文件扩展名的文件关联。只需运行test.rb命令即可运行脚本。在Linux和OSX中,要使脚本自动运行,必须有两件事:一是“shebang”行,二是将文件标记为可执行文件。
shebang系列已经为您完成;这是脚本的第一行,以#!。这会告诉shell这是什么类型的文件。在本例中,它是一个使用Ruby解释器执行的Ruby文件。要将文件标记为可执行文件,请运行命令chmod+x test.rb。这将设置一个文件权限位,指示该文件是一个程序并且可以运行。现在,要运行程序,只需输入命令。/test.rb。
您是使用Ruby命令手动调用Ruby解释器,还是直接运行Ruby脚本取决于您自己。在功能上,它们是相同的东西。使用你觉得最舒服的方法。
使用管道字符是需要掌握的一项重要技能,因为这些字符将改变Ruby脚本的输入或输出。在本例中,>;字符用于将test.rb的输出重定向到名为test.txt的文本文件,而不是打印到屏幕上。
如果在运行脚本后打开新的test.txt文件,您将看到test.rb Ruby脚本的输出。了解如何将输出保存到.txt文件可能非常有用。它允许您保存程序输出以供仔细检查,或在以后用作另一个脚本的输入。
C:\scripts>ruby example.rb >test.txt类似地,通过使用<;字符而不是>;您可以将Ruby脚本从键盘读取的任何输入重定向为从.txt文件读取。把这两个角色看作漏斗是很有帮助的;您正在将输出导入文件,并从文件中输入。
C:\scripts>ruby example.rb然后是管道字符|。此字符将从一个脚本的输出传输到另一个脚本的输入。这相当于将一个脚本的输出导入一个文件,然后从该文件导入第二个脚本的输入。它只是缩短了过程。
|字符在创建“过滤器”类型的程序时很有用,其中一个脚本生成未格式化的输出,另一个脚本将输出格式化为所需的格式。然后可以完全更改或替换第二个脚本,而不必修改第一个脚本。
C:\scripts>ruby example1.rb | ruby example2.rbRuby的一大优点是它是测试驱动的。交互式Ruby提示符为Ruby语言提供了一个用于即时实验的接口。这在学习Ruby和尝试正则表达式之类的东西时很有用。可以运行Ruby语句,并且可以立即检查输出和返回值。如果您犯了错误,您可以返回并编辑以前的Ruby语句来纠正这些错误。
要启动IRB提示符,请打开命令行并运行IRB命令。您将看到以下提示:
irb(main):001:0>在提示符中键入我们一直使用的“hello world”语句,然后按Enter键。在返回到提示符之前,您将看到该语句生成的任何输出以及该语句的返回值。在本例中,语句输出“helloworld!”并返回nil。
irb(main):001:0> puts "Hello world!" Hello world! => nilf irb(main):002:0>要再次运行此命令,只需按键盘上的向上键即可进入先前运行的语句,然后按Enter键。如果要在再次运行语句之前对其进行编辑,请按左右箭头键将光标移动到语句中的正确位置。进行编辑并按Enter键运行新命令。按向上或向下的额外时间将允许您检查已运行的更多语句。
在学习Ruby的过程中,应该使用交互式Ruby工具。当您了解一个新功能或只是想尝试一些东西时,启动交互式Ruby提示符并尝试一下。查看语句返回的内容,将不同的参数传递给它,然后做一些常规的实验。亲自尝试,看看它能做什么,比仅仅阅读它更有价值!
...中,您会注意到有时会添加恼人的格式标记(如标记)。使用简单的shell脚本,您可以通过几个简单的命令自动清除那些垃圾HTML格式。 ...
...标准的Raspbian,一个基于Debian的操作系统,但是您也可以使用任何与Raspberry Pi兼容的Linux操作系统。作为破折号.io需要一个互联网连接,你还需要一个Wi-Fi适配器或以太网电缆到Pi运行。 ...
...程语言的背景,你可能会发现这些建设者中的一个更容易使用。 ...
... 本教程是使用树莓皮3B+与树莓伸展在桌面模式。通过远程SSH连接,它也可以很好地工作,尽管不同的Pi模型和不同的操作系统可能会有不同的结果。 ...
... 您可以使用包管理器解决此问题。Homebrew是macOS的软件包管理器,它简化了免费Unix工具和GUI应用程序的安装。我们将向您展示如何使用自制软件安装应用程序,并让它们保持最新...
... 欢迎使用MakeUseOf指南来使用静态站点生成器。在本指南中,我们将介绍什么是静态站点生成器(SSG),为什么要使用它,以及如何使用它构建一个全新的站点。我们将探讨的一...
...是表示字符串或数值的命名符号。当您在命令和表达式中使用它们时,它们将被视为您键入了它们所包含的值,而不是变量的名称。 要创建变量,只需为其提供名称和值。变量名应该是描述性的,并提醒您它们所具有的值。变...
...的了。这听起来可能是限制性的和过时的,但作为不得不使用穿孔卡片或穿孔纸带的进步,打字是激进的和变革性的。从带着纸卷的电传打字机到带阴极射线管(CRT)屏幕的终端,是人机交互的又一次重大转变。 这一步为交互...
...brew/install/master/install)" 更新:改为运行以下命令。如果您使用上面的命令运行ruby脚本,它将要求您运行以下命令: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 这个脚本告诉你它将做什么。按Enter键...