1行の場合はBash

bashスクリプトの中でif条件を1行で書くにはどうしたらいいか教えてほしい。

例えば、これを1行で書いて、次の行に同じようなものをもう1つ書くにはどうしたらいいでしょうか?

if [ -f "/usr/bin/wine" ]; then
    export WINEARCH=win32
fi

私は.bashrcにかなりの数のエイリアスがあり、複数のシステムで同じ.bashrc(同期)を持っていますが、各システムですべてのエイリアスを必要としないため、この質問をしました。 私はそれらのほとんどをif文の中に置き、それは今、すべて美しく動作しているが、それらはそれぞれ3行とそれらの間の空白行の多くのスペースを取る(私はそれらを簡単に表示することが好きです)。

このテクニックは環境変数にも使うつもりです。

質問へのコメント (2)
ソリューション

というように書くのでしょう:

if [ -f "/usr/bin/wine" ]; then export WINEARCH=win32; fi

なお、これは(@glennjackmanさんが提案されたように)こうも書けるでしょう:

[ -f "/usr/bin/wine" ] && export WINEARCH=win32
解説 (4)

また、複雑なif、elseコマンドを入力してEnterを押し、実行後に上矢印を押すだけでいいというのも魅力的です。 コマンドラインは、もちろん最後に入力したコマンドを繰り返しますが、この場合、必要なコマンドを1行にまとめてくれます。 チートな方法ですが、効果的です。

解説 (1)