次のRubyコードがあります。
cmd="
source= $(mktemp)
echo source
"
system("#{cmd}")
system("source= $(mktemp)")
「mktemp」コマンドを実行し、一時ファイル名を変数「source」に出力するコードが必要でした。ただし、表示されるエラー メッセージは次のとおりです。
sh: /tmp/tmp.EpXeLNkqjN: Permission denied
sh: /tmp/tmp.wVCqdqHSpp: Permission denied
------------------
(program exited with code: 0)
Press return to continue
プログラムをルートとして実行しても、エラーは同じでした。
ただし、mktemp コマンドのみを実行する場合は問題ありません。なにが問題ですか?