如何删除网络文件夹中的所有内容

How to delete everything inside a notwork folder

我想删除网络驱动器上文件夹内的所有内容,但不删除文件夹本身。这是学校的驱动器,因此我无法删除文件夹并替换它。如果我尝试删除该文件夹,它看起来就像我删除了它,直到我重新启动我的电脑。之后我需要访问该文件夹,中间重启太不方便了。

我尝试过的事情:

cd \LOCATION
rd . /q /s

但是出现这个错误

CMD does not support UNC paths as current directories.

我希望我解释得足够好,如果有什么不明白的地方就写下来,然后我会尽力澄清。

打开“开始”菜单,在文本框中键入 cmd.exe 并按 Enter(或使用您喜欢的方法打开命令提示符)
通过键入 Z: 切换到网络驱动器(其中 Z 是网络驱动器的盘符)
使用 cd path\to\parent\directory 更改为您尝试删除的目录的父目录 使用 rmdir /S giantdir
删除目录 例如,如果要删除目录 O:\MG\WTF\BBQ\SOMANYFILES:

C:\Documents And Settings\Me> O:

O:> cd MG\WTF\BBQ

O:\MG\WTF\BBQ> rmdir /S SOMANYFILES
或者现在我想起来了,我觉得你可以这样做

C:\Documents And Settings\Me> O:

O:> rmdir /S MG\WTF\BBQ\SOMANYFILES
但是您会错过看到 Windows 以终端字体拼出 OMGWTFBBQ 的机会;-)

顺便说一下,rmdir(或 del)不会把东西移到回收站,它只是删除它们,
所以要小心不要删除你不想删除的东西。

创建批处理文件并遍历要保留的文件夹中的每个文件夹。考虑你有 \LOCATION\Folder\folder2 然后 folder3 等。然后这将从 \LOCATION\Folder 中删除所有文件夹但保留 Folder:

set "myunc=\LOCATION\Folder" 
pushd "%myunc%" && (
    for /d %%i in (*) do rmdir "%%i" /q /s 
    popd
)

Set 设置一个变量名称 myfunc,其值在本例中是您的路径。

For /d 是一个循环,遍历 %myunc% 路径中的每个目录,然后简单地对每个目录执行 rd

Pushd 允许您几乎 cd 到网络 UNC 路径。 pushd 将为 UNC 路径创建一个临时驱动器号。所以这几乎就像你在做 net use X: \servername\path

popd 将为您删除临时驱动器盘符。

打开 cmd.exe 并输入 pushd /?popd /?

要了解有关批处理命令的更多信息,请从 cmd.exe 执行 help,这将列出所有 cmd 命令,对于每个命令,您可以 运行 /? 开关来学习更多信息。