簡體   English   中英

如何刪除文件和文件夾但保留目錄結構並留下空文件而不是文件本身?

[英]How to delete files and folders but keep directory structure and leave behind a empty file instead of file itself?

我想刪除文件和文件夾,但保留目錄結構不變。

但是我還需要在當前路徑中保留文件名。 就像這樣,留下一個空的文本,其名稱與文件名稱相同,而不是文件本身。

我的驅動器格式是NTFS。

在Bash 4+中,您可以執行以下操作將某個路徑下的所有文件歸零:

shopt -s globstar
for file in /mnt/c/path/to/clean/**; do
    [[ -f $file ]] && : > "$file"
done

您可以使用os.walk瀏覽目錄結構,並用空文件替換每個文件(覆蓋文件:

import io
import os

work_dir = '.'
for root, dirnames, filenames in os.walk(work_dir):
    for filename in filenames:
        path = os.path.join(root, filename)
        io.open(path, mode='w').close()

請參閱文檔: https : //docs.python.org/3/library/os.html

對於Windows cmd解決方案

for /r "x:\path\to\clean" %a in (*) do ">%a" type nul

要從批處理文件運行它,需要轉義百分號(將它們加倍)

for /r "x:\path\to\clean" %%a in (*) do ">%%a" type nul

在Windows ,您可能要使用robocopy命令

rem // Create copy with zero-length files at temporary location:
robocopy "\path\to\your\dir" "\path\to\temp\dir" *.* /E /CREATE
rem // Move tree at temporary location onto original location:
robocopy "\path\to\temp\dir" "\path\to\your\dir" *.* /E /MOVE /IS

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM