我在公司文件夾中有多個分支,然後每個分支有多個用戶。我需要在離開分支時刪除某些用戶。我沒有收到錯誤,但整個分支文件夾被刪除,而不僅僅是指定的用戶文件夾。有人能指出我在正確的方向使用兩個變量刪除文件夾內的文件夾
#!/usr/bin/python
import os, sys, getopt, shutil
branch, user = "",""
if __name__ == "__main__":
argv = sys.argv[1:]
try:
opts, args = getopt.getopt(argv, 'hd:e', ['help', 'branch=', 'user='])
except getopt.GetoptError:
print __doc__
sys.exit()
for opt, arg in opts:
if opt in ('-h', '--help'):
print __doc__
sys.exit()
if opt in ('-d', '--branch'):
branch = arg
if opt in ('-e', '--user'):
user = arg
shutil.rmtree("/home/company/%s/%s" % (branch , user))
這聽起來像你的'用戶'變量沒有被設置。考慮添加一個明確的檢查或斷言來確保'user!=「」'。 – Amber 2012-01-27 09:24:26
就像它在這裏,你有一個非常有趣的「不該做什麼」的例子,因爲帶有這個縮進的rmtree將簡單地刪除整個「/ home/company ///」樹,如果這個模塊被導入 - 例如,如果在交互式Python控制檯 – jsbueno 2012-01-27 11:43:35
中錯誤地鍵入「import」,那麼您是否對如何執行此操作有任何建議?我的編碼技能是最小的,所以我在這裏做錯誤試驗 –
user1173151
2012-01-27 12:26:24