mktemp
の結果を引数としてコマンドに渡したい場合は、_gcc -o
_としましょう。 gcc -o $(mktemp)
を使用すると、結果が使用されますが、結果を理解する必要があります。
私が思いつくことができる唯一のものはgcc -o $(out=$(mktemp); echo $out)
ですが、それはコンソールに値を出力しませんが、代わりに正しいafaikである引数値として使用されます。
mktemp
の結果をコンソールに出力する方法はありますか?.
これをスクリプトで解決することができます。提案したいワンライナーソリューションで知識を広げたいのですが。
Ubuntu 19.04のbash
で使用したいのですが。
tee
と/dev/tty
?
$ gcc -o $(mktemp | tee /dev/tty) hello.c
/tmp/tmp.UBSSnulNn2
$ /tmp/tmp.UBSSnulNn2
Hello, world!
関連:
gcc -o $(out=$(mktemp); echo $out)
での切り替え:
out=$(mktemp); echo "$out"; gcc -o "$out" hello.c
...また、後で使用するために、パスを変数に残しておくと便利です。 (おそらく、出力でパスを見ただけでmktemp
のランダムな名前生成の美しさを賞賛したくないのではないでしょうか?そのパスで他の場所で使用したいでしょう。)