2
シェルスクリプトから一時ファイルを安全に作成してアクセスするにはどうすればよいですか?
私は中に固定名前のファイルに出力をリダイレクトすることを読んで/tmp、攻撃者(あるいは不満)であればあるため、セキュリティ上のリスクとなる可能性がありますファイルがあることの通知/tmp/tmpfileformyscript.tmp、彼は私への読み取りアクセス権を持っていなくても(私は私のスクリプトを実行したときに作成されますスクリプト)、たとえば、スクリプトを実行するときにファイルln -s ~wildcard/.bashrc /tmp/tmpfileformyscript.tmpを破棄するシンボリックリンクを作成でき.bashrcます。 だから代わりに私はのようなものを使用することができますfilename="tmpfile.tmp.$RANDOM" ; echo outputtext > "$filename"。 ただし、キャッシュにtmpファイルを使用したい場合があります。その場合、「tmpfile.tmp。*」が何かに一致するかどうかを知りたい場合は/tmp、新しいファイルを作成するのではなく、そのファイルを使用します。残念ながらtest、[ -f filename ]私が知る限り、同等のものはファイルグロビングをサポートしていません。 したがって、私の質問は2つあります。 一時ファイルを安全に作成するにはどうすればよいですか?"predictablename.$RANDOM"受け入れられるプラクティスですか、それともより良い(より安全で簡単な)方法がありますか? 確認することで、ファイルに簡単にアクセスしたり、後でその存在を確認したりするにはどうすればよいpredictablenameですか?