我做“sudo rm *”,它并没有删除所有的东西。 (我可能有很多的东西,我不需要)
我不是问是否可以删除tmp中的所有内容 – 我在问怎么做:)
有一个shell脚本可以做到吗?
你不应该那样做,因为那里可能有unix套接字在使用(或需要),等等。
但是,如果你愿意,
rm -rf /tmp/*
正如其他海报所提到的,很难回答一个不合作的提问者,但这是最接近我可以得到一个答案,可能会工作,而你实际上给了更多的细节,具体到哪里出了问题。 它绕过glob扩展的问题(是“*”扩展为根或用户?扩展到超出shell的(相当大的)内置限制?)或current-directory(你还在/ 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
首先,在这个问题上,我没有提供足够的build议给任何人提供build议,但是我可以发表我过去所做的来解决这些问题。
sudo -- rm -rf /tmp/ sudo -- cd /tmp/ sudo -- chmod 777 /tmp
然后重新启动服务器,所有需要的tmp文件将重新写入/ tmp /由系统重新启动时…
在服务器上包含任何网站软件等需要的/ tmp /文件。
这将永久删除任何/ tmp / session文件并释放太多的空间….
如果问题与隐藏文件有关,也许这个问题并不那么愚蠢。 在这里看到更多的细节: https : //askubuntu.com/questions/72446/how-to-remove-all-files-and-subdirectories-in-a-directory-without-deleting-the-d
我自己解决了。 谢谢你们所有的非常有帮助的,不屈不挠的,很棒的帮助。
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)