Ruby を使用してコマンドライン インターフェイスを構築する:ステップバイステップ ガイド
コマンドラインインターフェースの構築を検討していますか?素晴らしいプロジェクトのアイデアですね!このガイドでは、Ruby でコマンド ライン インターフェイスを構築する方法について説明します。
始める前に、コンピュータに Ruby がインストールされており、Unix コマンドを実行できるターミナルを使用している必要があります。 Linux または macOS ベースのコンピュータを使用している場合は、Unix 互換ターミナルがすでに組み込まれています。これらの要件を満たしたら、すぐに始めることができます。
コマンド ライン インターフェイスとは何ですか?
コーディングのキャリアを始めると、すぐにターミナルについて学びます。ターミナル ウィンドウを使用すると、コマンド ライン インターフェイス (CLI) を操作できます。CLI を使用すると、テキスト コマンドを使用してプログラムを実行および操作できます。
ターミナル ウィンドウを使用すると、マウスやビジュアル アプリケーションを使用せずにコンピュータに指示を与えることができます。これにより、命令の作成だけに集中できるため、コードを作成する時間が節約されます。使用するツールごとに新しいユーザー インターフェイスを習得する必要はありません。
あなたがこれまでに操作した CLI は、おそらく他の人によって開発されたものです。たとえば、Python CLI を使用するとターミナルから Python を実行できますが、Ruby CLI を使用すると Ruby アプリケーションで同じことを実行できます。幸いなことに、独自のものを構築することもできます。
まず、マシン上でターミナル ウィンドウを開きます。次に、mkdir を使用します。 コマンドを使用して、コード用のフォルダーを作成します。このコマンドの動作例を次に示します。
このコマンドにより、コンピューター上に「ruby-cli」というフォルダーが作成されます。 cd を使用できるようになりました。 このフォルダに移動して CLI を作成します。
素晴らしい!今、私たちは新しい「ruby-cli」フォルダーにいます。この記事で行う必要がある設定はこれですべてです。次のステップは、コマンド ライン インターフェイスの作成を開始することです。
コマンド ライン インターフェイスに追加する最初の機能は、「これは CLI の例です」という用語をターミナルに出力することです。これを行うには、「home.rb」という新しいファイルを作成し、そのファイルにコードを挿入します。
新しいファイルを作成するには、次のコマンドを使用できます。
これにより、nano が開きます。 プログラムのコードを配置できるテキスト エディター。必要に応じて、vim や emacs などの別のテキスト エディタを使用できます。
nano テキスト エディタに、次のコードを貼り付けます。
#!/usr/bin/env ruby puts "This is an example CLI"
ここで、Mac では Control+X、Y、Enter を押して保存しましょう。これにより、「ruby-cli」フォルダーに「home.rb」という新しいファイルが作成されます。
コードの最初の行は、コードを実行するために Ruby インタープリターを使用するようにコンピューターに指示します。これにより、コードが Ruby で実行されることが保証されます。 2 行目は、「This is an example CLI」をコンソールに出力するようにプログラムに指示します。
これで、ruby を使用してファイルを実行できます。 コマンド:
コードは次を返します:
ご覧のとおり、単純な CLI を作成しただけです。 「home.rb」ファイルを実行すると、「これはサンプル CLI です」という用語がコンソールに出力されます。
フラグを使用したユーザー入力の受け入れ
ここまでの CLI は非常にシンプルで、メッセージをコンソールに出力するだけです。ユーザー入力を受け入れたい場合はどうすればよいでしょうか? optparse を使用してこれを行うことができます。 図書館。これにより、プログラムで使用できるコマンドラインから提供されたオプションを解析できるようになります。
optparse を使用しています いくつかの理由からライブラリを使用します。まず、optparse ライブラリを使用すると、各コマンドのヘルプ メニューを生成できます。 2 番目、optparse Ruby に組み込まれているため、何もインストールする必要はありません。
ユーザーの電子メール アドレスを入力として受け入れ、それをコンソールに返す機能を追加しましょう。
テキスト エディタで「home.rb」ファイルを開き、その内容を次のコードに置き換えます。
#!/usr/bin/env ruby
require 'optparse'
options = {}
OptionParser.new do |op|
op.on("-e", "--email", "Your email address") do |value|
options[:name] = value
end
end.parse!
puts 'Your email address is: ' + options[:name]
このコードでは、optparse を使用します。 コマンドを通じて送信されたデータを解析するライブラリ。次に、ユーザーが指定した値を変数に代入し、コンソールに出力します。この場合、「あなたの電子メール アドレスは次のとおりです。」の後に、ユーザーが指定した電子メールが表示されます。
このコマンドを使用してコードを試すことができます。
ruby home.rb -e jack@jones.com
コードは次を返します:
Your email address is: jack@jones.com
optparse の優れた点 ライブラリの特徴は、ヘルプ メニューを自動生成することです。次のコードを使用すると、このヘルプ メニューを表示できます。
コードは次を返します:
Usage: ruby [options] -e, --email Your email address
コマンドを実行するときは、-e のいずれかを使用できます。 または --email 旗。

「キャリアカルマは、私が最も必要としたときに私の人生に入り込み、すぐにブートキャンプに参加するのに役立ちました。卒業から 2 か月後、自分の価値観と人生の目標に合致する夢の仕事を見つけました!」
Rockbot のソフトウェア エンジニア、Venus 氏
ブートキャンプにマッチするものを見つけてください
プログラムでのユーザー入力の受け入れ
前の例では、フラグを使用してユーザー入力を受け入れました。ただし、複数の情報を受け入れたい場合には、フラグは実用的ではない可能性があります。
Ruby で CLI を作成する利点は、どの Ruby プログラムも CLI にできることです。したがって、始めるために新しい規則を学ぶ必要はありません。
ユーザーの名前と電子メールを取得し、16 歳以上かどうかを確認するアプリケーションを構築するとします。
まず、次のコマンドを実行して nano に入りましょう。 テキストエディタ:
新しく作成したファイルに、次のコードを貼り付けます。
puts "What is your name?"
name = gets
puts "What is your age?"
age = gets
if age.to_i >= 16
puts "#{name}! You are 16 or older!"
else
puts "#{name}! You are not over the age of 16!"
end ファイルを保存した後、次のコマンドを使用して新しい CLI を実行できます。
コードは次を返します:
What is your name? James What is your age? 17 James! You are 16 or older!
「あなたの年齢は何ですか?」という質問に対して値「14」を挿入すると、次のものが返されます。
James! You are not over the age of 16.
CLI には任意の Ruby コードを書き込むことができます。唯一の制限はあなたの想像力です。
結論
CLI を使用すると、端末を使用してプログラムと対話できます。これは、プログラムのユーザー インターフェイス (Atom やメモ帳などのテキスト エディタを開いたときに表示されるものなど) の代替です。
このガイドでは、Ruby を使用して簡単な CLI を構築する方法を説明しました。これで、Ruby の専門家のように独自の CLI の構築を開始する準備が整いました。
-
Rubyプログラムをデバッグおよび修正する方法
あなたのプログラムは、最初にあなたが望むことを正確に実行する頻度はどれくらいですか? 多くの場合、プログラムは期待どおりに機能しないため、ルビーのデバッグの技術を使用する必要があります。 理由を見つけるのに役立ちます。 次のエラーメッセージに精通している可能性があります。 undefined method some_method for nil:NilClass これは、nil値がコードへの道を見つけることができたことを意味します。 この記事で説明する手法を使用して、この問題や同様の問題に対処する方法を学びます。 エラーとスタックトレースを理解する Rubyインタープリターからエラー
-
Master Devise:Ruby on Rails 認証の基本ガイド
20,000 を超える GitHub スターと多くの統合を備えた Devise gem は、Ruby 環境で最も人気のある gem の 1 つです。では、なぜこれを Ruby の「隠れた」宝石の 1 つと呼ぶのでしょうか?まあ、人気があるにもかかわらず、ほとんどの開発者はライブラリの機能の表面をなぞっただけです。 この 2 部構成のシリーズでは、Devise について詳しく説明します。 この最初のパートでは、次のような基本のいくつかを学習します。 Devise とは何か、そもそも Devise を使用する必要がある理由、使用しない方がよい状況も含む Devise をインストールしてプロ