web-dev-qa-db-ja.com

/ tmp /フォルダー内のすべてを削除するにはどうすればよいですか?

「Sudo rm *」を実行しても、すべてが削除されるわけではありません。 (おそらくそこには必要のないオブジェクトがたくさんあります。)

Tmp内のすべてを削除しても大丈夫かどうかを尋ねているのではありません-私はそれを行う方法を尋ねています:)

それを実行できるシェルスクリプトはありますか?

2
Alex

使用中(または必要)のUNIXソケットが存在する可能性があるため、これを行うべきではありません。

しかし、もし望むなら:

rm -rf /tmp/*
9
mulaz

第一に、私はこの問題について誰かに助言するのに十分に精力的ではありませんが、私はこれらの問題に対処するために過去に私がしたことを投稿することができます。

Sudo -- rm -rf /tmp/
Sudo -- cd /tmp/
Sudo -- chmod 777 /tmp

その後、サーバーを再起動すると、必要なすべてのtmpファイルが再起動時にシステムによって/ tmp /に再書き込みされます...

サーバー上の任意のWebサイトソフトウェアなどによって必要な/ tmp /ファイルを含める。

これにより、/ tmp/sessionファイルが完全に削除され、多くのスペースが解放されます。

1
mike

他のポスターが述べたように、非協力的な質問者に答えるのは難しいですが、これは、具体的に何が悪いのかについての詳細を実際に提供しなくても、おそらくうまくいく答えに到達できる最も近いものです。 glob展開の問題の可能性を回避します(ルートまたはユーザーとして "*"が展開されていますか?シェルの(かなり大きい)組み込みの制限を超えて展開されていますか)または現在のディレクトリ(後で/ tmpに残っていますか) sudo?).

if `Sudo id` | grep uid=0; then
  Sudo find /tmp/ -maxdepth 1 \! -name . -exec rm -rf {} \;
else
 echo The problem, Alex, is that Sudo "isn't" actually giving you root.
fi

問題が隠しファイルに関連している場合、おそらく質問はそれほど愚かではありませんでした。詳細については、こちらをご覧ください: https://askubuntu.com/questions/72446/how-to-remove-all-files-and-subdirectories-in-a-directory-without-deleting-the-d

0
rookie coder