Como eu apago tudo na pasta / tmp /?

2

Eu faço "sudo rm *" e ele não remove tudo. (Eu provavelmente tenho muitos objetos que eu não preciso).

Eu não estou perguntando se está tudo bem para remover tudo no tmp - eu estou perguntando como fazer isso:)

Existe um script de shell que pode fazer isso?

    
por Alex 27.05.2012 / 21:14

5 respostas

9

Você não deve fazer isso, pois pode haver soquetes unix em uso (ou necessários), etc.

Mas ainda assim, se você quiser:

rm -rf /tmp/*
    
por 27.05.2012 / 21:16
1

Como outros pôsteres mencionaram, é difícil responder a uma pergunta pouco cooperativa, mas é o mais próximo que eu chego de uma resposta que provavelmente funcionará sem que você forneça mais detalhes sobre o que está errado. Ele contorna a possibilidade de um problema com a expansão glob (está "*" expandindo como root ou user? Está expandindo para além do limite embutido (bastante grande) do shell?) Ou com current-directory (você ainda está em / tmp após o 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
    
por 25.11.2012 / 19:50
1

Primeiro, não sou suficientemente esperto para aconselhar ninguém sobre esse assunto. No entanto, posso postar o que fiz no passado para abordar essas questões.

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

em seguida, reinicie o servidor, todos os arquivos tmp necessários serão reescritos em / tmp / pelo sistema após a reinicialização ...

Incluindo arquivos / tmp / arquivos necessários por qualquer software de site, etc., no servidor.

Isso removerá permanentemente qualquer arquivo / tmp / session e liberará muito espaço ...

    
por 25.11.2012 / 17:07
0

Talvez a pergunta não seja tão estúpida, se o problema estiver relacionado a arquivos ocultos. Veja aqui para mais detalhes: link

    
por 29.07.2014 / 15:13
-8

Eu resolvi isso sozinho. Obrigado por toda sua ajuda extremamente útil, não condescendente e maravilhosa, @lain.

import sys
import os
import fileinput

path = '/tmp/'
listing = os.listdir(path)
for li in listing:
    cmd = 'sudo rm -rf /tmp/' + li
    print cmd
    os.system(cmd)
    
por 27.05.2012 / 23:29

Tags