我需要删除文件夹,但收到错误can't remove because directory is not empty我使用了以下命令:
can't remove because directory is not empty
Remove-Item \\wsl.localhost\Debian\home\my_folder_to_delete -Recurse -Force
如何强制删除?PS:我在Windows 11上使用PowerShell非常感谢
cwdobuhd1#
在this answer中,很可能WSL仍在访问该目录(或其中的某个文件)。
wsl --shutdown
应在"使用中"文件中发布。
Remove-Item
从建议从Linux shell执行此操作的评论中可以看出:你知道我怎么用Linux shell吗?我是这方面的初学者做个初学者没什么不好(我们都曾一度如此),但请记住,WSL * 在大多数方面都是 * Linux。了解一些"Linux基础知识"对于了解WSL是非常必要的。* 旁注--我正在考虑在YouTube上做一个关于使用WSL学习Linux的系列文章。如果感兴趣,请关注我的Profile。然后在评论中告诉我你是否对此感兴趣。*\\wsl.localhost\Debian\home\my_folder_to_delete这在Debian中被翻译成/home/my_folder_to_delete。记住这一点,创建或想要删除它是一个奇怪的目录。只要确保你没有删除你的主目录,因为这会导致问题。但要移除它(最安全的):
\\wsl.localhost\Debian\home\my_folder_to_delete
/home/my_folder_to_delete
cd /home [ ! -L my_folder_to_delete] && rm -rf --one-file-system my_folder_to_delete
通常,在Linux中,一个简单的rm -rf my_folder_to_delete就足够了,但这是我的一个偏执狂,过度保护的命令版本,以避免类似this的事情发生。请注意,如果您将目录创建为sudo或root,则可能必须使用以下命令:
rm -rf my_folder_to_delete
sudo
root
cd /home [ ! -L my_folder_to_delete] && sudo rm -rf --one-file-system my_folder_to_delete
您可以在Debian中使用 * Linux * 版本的PowerShell。请参阅here了解安装说明。您甚至可以使用chsh命令将用户shell设置为PowerShell。不过,老实说,我不能决定这对Linux新手来说是个好主意还是坏主意。
chsh
1条答案
按热度按时间cwdobuhd1#
在this answer中,很可能WSL仍在访问该目录(或其中的某个文件)。
选项1:让Windows PowerShell来实现
应在"使用中"文件中发布。
Remove-Item
命令。选项2:Linux方式
从建议从Linux shell执行此操作的评论中可以看出:
你知道我怎么用Linux shell吗?我是这方面的初学者
做个初学者没什么不好(我们都曾一度如此),但请记住,WSL * 在大多数方面都是 * Linux。了解一些"Linux基础知识"对于了解WSL是非常必要的。* 旁注--我正在考虑在YouTube上做一个关于使用WSL学习Linux的系列文章。如果感兴趣,请关注我的Profile。然后在评论中告诉我你是否对此感兴趣。*
\\wsl.localhost\Debian\home\my_folder_to_delete
这在Debian中被翻译成
/home/my_folder_to_delete
。记住这一点,创建或想要删除它是一个奇怪的目录。只要确保你没有删除你的主目录,因为这会导致问题。但要移除它(最安全的):
通常,在Linux中,一个简单的
rm -rf my_folder_to_delete
就足够了,但这是我的一个偏执狂,过度保护的命令版本,以避免类似this的事情发生。请注意,如果您将目录创建为
sudo
或root
,则可能必须使用以下命令:选项3:Linux + PowerShell方式
您可以在Debian中使用 * Linux * 版本的PowerShell。请参阅here了解安装说明。您甚至可以使用
chsh
命令将用户shell设置为PowerShell。不过,老实说,我不能决定这对Linux新手来说是个好主意还是坏主意。