summaryrefslogtreecommitdiff
path: root/azurelinuxagent/common/utils/fileutil.py
diff options
context:
space:
mode:
Diffstat (limited to 'azurelinuxagent/common/utils/fileutil.py')
-rw-r--r--azurelinuxagent/common/utils/fileutil.py22
1 files changed, 13 insertions, 9 deletions
diff --git a/azurelinuxagent/common/utils/fileutil.py b/azurelinuxagent/common/utils/fileutil.py
index 8713d0c..bae1957 100644
--- a/azurelinuxagent/common/utils/fileutil.py
+++ b/azurelinuxagent/common/utils/fileutil.py
@@ -119,16 +119,20 @@ def rm_files(*args):
def rm_dirs(*args):
"""
- Remove all the contents under the directry
+ Remove the contents of each directry
"""
- for dir_name in args:
- if os.path.isdir(dir_name):
- for item in os.listdir(dir_name):
- path = os.path.join(dir_name, item)
- if os.path.isfile(path):
- os.remove(path)
- elif os.path.isdir(path):
- shutil.rmtree(path)
+ for p in args:
+ if not os.path.isdir(p):
+ continue
+
+ for pp in os.listdir(p):
+ path = os.path.join(p, pp)
+ if os.path.isfile(path):
+ os.remove(path)
+ elif os.path.islink(path):
+ os.unlink(path)
+ elif os.path.isdir(path):
+ shutil.rmtree(path)
def trim_ext(path, ext):
if not ext.startswith("."):