コマンドライン引数の読み取り

Fish Shell:
コマンドライン引数の読み取り

How to: (方法)

# my_script.fish
for arg in $argv
    echo "引数: $arg"
end

実行例:

$ fish my_script.fish こんにちは 世界
引数: こんにちは
引数: 世界

Deep Dive (深掘り)

Fish Shellでは、$argvはシェルスクリプトに渡された全ての引数を含むリストです。歴史的に、他のシェル(BashやZshなど)でも同様の概念がありますが、Fishはシンタックスが独特です。例えば、Bashでは$@$1, $2のように引数を扱います。Fishでは、省略形やエラーハンドリングもより読みやすく書けます。例えば、何らかの引数が必要な場合、次のように書くこともできます。

if count $argv > /dev/null
    # 引数が一つ以上ある場合のコード
else
    echo "引数が必要です"
end

このようにFishでは、直感的で読みやすいコードが特徴です。スクリプト内で引数をチェックして分岐することは一般的なタスクで、Fishはそのための効果的なツールを提供します。

See Also (参照)