使用命令行運(yùn)行Ruby腳本

在真正開始使用Ruby之前,您需要對命令行有一個基本的了解。由于大多數(shù)紅寶石腳本都有圖形用戶界面,因此您可以從命令行運(yùn)行它們。因此,您需要至少知道如何導(dǎo)航目錄結(jié)構(gòu)以及如何使用管道字符(例如|,>)重定向輸入和輸出。本教程中的命令在Windows,Linux和OS X上是相同的。

  • 要在Windows上啟動命令提示符,請轉(zhuǎn)到start->Run。在出現(xiàn)的對話框中,在輸入框中輸入cmd并按OK。
  • 要在Linux上啟動命令提示符,請轉(zhuǎn)到Applications->Accessures->終端。
  • 要在OS X上啟動命令提示符,請轉(zhuǎn)到Applications->Utilities->終端。

一旦你're在命令行,你'將被提示。它'通常是單個字符,如$##。提示還可能包含更多信息,例如您的用戶名或當(dāng)前目錄。要輸入一個命令,只需輸入命令并單擊輸入鍵即可。

第一個要學(xué)習(xí)的命令是cd命令,該命令將用于進(jìn)入保存Ruby文件的目錄。下面的命令將目錄更改為\ scripts目錄。請注意,在Windows系統(tǒng)上,反斜杠字符用于界定目錄,但在Linux和OS X上,使用正斜杠字符。

運(yùn)行紅寶石腳本

現(xiàn)在你知道如何導(dǎo)航到你的紅寶石腳本(或你的rb文件),它是運(yùn)行它們的時間。打開文本編輯器并將以下程序保存為測試。

#!/usr/bin/env紅寶石

打印"你的名字是什么?"

名稱=gets.chomp

放置"你好#{name}!"

打開命令行窗口,并使用cd命令導(dǎo)航到Ruby腳本目錄。到那里后,您可以使用Windows上的dir命令或Linux或OS X上的ls命令列出文件。您的Ruby文件都具有.rb文件擴(kuò)展名。運(yùn)行測試Ruby腳本,運(yùn)行命令Ruby測試。腳本應(yīng)該要求你的名字并迎接你。

或者,您可以配置腳本以在不使用Ruby命令的情況下運(yùn)行。在Windows上,單擊安裝程序已經(jīng)設(shè)置了與.rb文件擴(kuò)展名的文件關(guān)聯(lián)。只需運(yùn)行命令測試將運(yùn)行腳本。在Linux和OS X中,要使腳本自動運(yùn)行,必須有兩件事:a&##34;shebang"行和標(biāo)記為可執(zhí)行文件的文件。

shebang行已經(jīng)為您完成;它是'腳本中的第一行,以##開始!。這告訴shell這是什么類型的文件。在這種情況下,它是一個用Ruby解釋器執(zhí)行的Ruby文件。要將文件標(biāo)記為可執(zhí)行文件,請運(yùn)行命令chmod+x測試。這將設(shè)置一個文件權(quán)限位,指示該文件是一個程序并且可以運(yùn)行?,F(xiàn)在,要運(yùn)行該程序,只需輸入命令/測試。

無論是使用Ruby命令手動調(diào)用Ruby解釋器還是直接運(yùn)行Ruby腳本,都取決于您。在功能上,他們是一樣的。使用任何你最舒服的方法。

使用管道字符

使用管道字符是掌握的重要技能,因?yàn)檫@些字符將改變Ruby腳本的輸入或輸出。在這個例子中,>字符用于重定向輸出測試到一個名為test.txt而不是打印到屏幕上。

如果你打開新的test.txt文件運(yùn)行腳本后,you'請參閱輸出測試紅寶石腳本。知道如何將輸出保存到.txt文件可能非常有用。它允許您保存程序輸出以供仔細(xì)檢查,或稍后用作其他腳本的輸入。

C: \ scripts>紅寶石示例>test.txt

同樣,通過使用字符而不是>字符,您可以重定向任何輸入紅寶石腳本可以從鍵盤讀取到從.txt文件讀取。將這兩個字符視為漏斗是有幫助的;您可以將這兩個字符重新漏斗輸出到文件并從文件中輸入。

C: \ scripts>紅寶石示例

然后在那里's管道字符,|。此字符將輸出從一個腳本漏斗到另一個腳本的輸入。它'相當(dāng)于將腳本的輸出漏斗到文件,然后從該文件漏斗輸入第二個腳本。它只是縮短了這個過程。

教育_1

|字符可用于創(chuàng)建"過濾器"鍵入程序,其中一個腳本生成未格式化的輸出,另一個腳本將輸出格式化為所需格式。然后可以完全更改或替換第二個腳本,而無需修改第一個腳本。

C: \ scripts>RubyExample1.rb | RubyExample2.rb

交互式紅寶石提示

關(guān)于Ruby的一件偉大事是它是由測試驅(qū)動的。交互式Ruby提示為Ruby語言提供了一個界面,用于即時實(shí)驗(yàn)。這在學(xué)習(xí)紅寶石和試驗(yàn)正則表達(dá)式等方面很有用。Ruby語句可以運(yùn)行,輸出和返回值可以立即檢查。如果犯了錯誤,可以返回并編輯以前的Ruby語句來糾正這些錯誤。

要啟動IRB提示,請打開命令行并運(yùn)行irb命令。您'將顯示以下提示:

irb(主要):001:0>

鍵入"hello world"語句we've一直在使用提示并點(diǎn)擊輸入。您醫(yī)療科普'在返回到提示符之前,將看到生成的語句的任何輸出以及語句的返回值。在這種情況下,語句output"Hello world!"并返回。

irb(主要):001:0>puts"Hello world!"

你好世界!

=>nilf

irb(主要):002:0>

要再次運(yùn)行此命令,只需按鍵盤上的向上鍵即可獲得先前運(yùn)行的語句并按Enter鍵即可。如果要在再次運(yùn)行語句之前編輯語句,請按左右箭頭鍵將光標(biāo)移動到語句中的正確位置。進(jìn)行編輯并按Enter鍵運(yùn)行新命令。向上或向下按下額外的時間將允許您檢查更多的語句've運(yùn)行。

在學(xué)習(xí)紅寶石的過程中應(yīng)該使用交互式紅寶石工具。當(dāng)您了解新功能或僅想嘗試某些內(nèi)容時,請啟動交互式Ruby提示并嘗試。查看語句返回的內(nèi)容,將不同的參數(shù)傳遞給它,只需進(jìn)行一些一般性的實(shí)驗(yàn)。自己嘗試一些東西,看看它的作用可能比僅僅閱讀它更有價值!