引数処理

標準ライブラリ

コマンドライン引数はstd::env::argsを介して取得できます。これはそれぞれの引数を文字列として生成するイテレータを返します。

use std::env;

fn main() {
    let args: Vec<String> = env::args().collect();

    // ひとつ目の引数はプログラムを呼び出す際に使用したパス。
    println!("My path is {}.", args[0]);

    // 残りはプログラムに渡されたコマンドラインパラメータ。
    // プログラムはこんなふうに呼び出します。
    //   $ ./args arg1 arg2
    println!("I got {:?} arguments: {:?}.", args.len() - 1, &args[1..]);
}
$ ./args 1 2 3
My path is ./args.
I got 3 arguments: ["1", "2", "3"].

クレート

Alternatively, there are numerous crates that can provide extra functionality when creating command-line applications. One of the more popular command line argument crates being clap.