如何以编程方式将引号添加到 Windows File/Directory 名称 w

How to Programatically Add Quotes to Windows File/Directory Names w

我正在使用 Git for windows 使用 linux findrm 命令查找和删除文件。 return 由 find 命令编辑的路径中的一些 file/directory 名称有空格,例如“程序文件”windows 目录。

运行 findrm 命令 如下所示 将 return 错误,因为 [=] 中的空格26=] 名字。如何在不从 rm 命令接收到错误的情况下以编程方式删除这些文件?

$ find /c/'program files'/ ~ -type f -iname "securecrt.vbs" 2>/dev/null
/c/program files/VanDyke Software/Clients/Scripts/securecrt.vbs
$
$ find /c/'program files'/ ~ -type f -iname "securecrt.vbs" 2>/dev/null | xargs rm
rm: cannot remove '/c/program': No such file or directory
rm: cannot remove 'files/VanDyke': No such file or directory
rm: cannot remove 'Software/Clients/Scripts/securecrt.vbs': No such file or directory

最好使用 -exec 指令:

find /c/'program files'/ ~ -type f -iname "securecrt.vbs" -exec rm {} \;

即使名称中包含 space 的文件也能正常工作。