Shellでパイプを使用して変数名を指定する方法はありますか?

Shellでパイプを使用して変数名を指定する方法はありますか?

3行のテキストファイルがあるとしましょう。知られている

1
2
3

これを可能にする方法はありますか?

$ x='cat a | head -1'

ベストアンサー1

やりたいことを言いますコマンドの置き換え、あるコマンドの出力を別のコマンドのコマンドラインに入れます。たとえば、他のコマンドに引数を指定したり、変数に出力を代入したりします。

ほぼ正しい構文を使用しました。$()コマンドを使用する必要があります。例えば

x=$(cat a | head -1)あるいは猫は不要なので、x=$(head -1 a)

バックティック( `)も使用できますが、いくつかの問題(入れ子にすることはできません、一重引用符と区別するのが難しいなど)があるため、使用されなくなったと見なされます。

おすすめ記事