Powershell 删除程序文件文件夹中的文件和文件夹

Powershell 删除程序文件文件夹中的文件和文件夹,powershell,Powershell,我一直在使用 remove-item -path C:\... 要删除文件夹和文件,但我最近试图删除Program files文件夹中的一个文件,但出现错误: 找不到接受参数“Files\New”的位置参数 试图看看它是否只是语法,但似乎不是 remove-item -path C:\Program Files\New -force 如果是64位机器,也有一个 remove-item -path C:\Program Files (x86)\New -force 两者都不起作用。我的所有其

我一直在使用

remove-item -path C:\...
要删除文件夹和文件,但我最近试图删除Program files文件夹中的一个文件,但出现错误:

找不到接受参数“Files\New”的位置参数

试图看看它是否只是语法,但似乎不是

remove-item -path C:\Program Files\New -force
如果是64位机器,也有一个

remove-item -path C:\Program Files (x86)\New -force
两者都不起作用。我的所有其他
删除项目
都有效

任何帮助都会很好

您的命令:

remove-item -path C:\Program Files\New -force
被解析为字符串参数
-path
,其值为
C:\Program
和开关参数
-force
。命令
Files\New
中还有一个附加部分。它不是以破折号开始的,因此PowerShell尝试将其绑定到任何位置参数,但它不能,因此它说:

找不到接受参数“Files\New”的位置参数。

只要论点中有空格,就必须在其周围加上单引号或双引号:

remove-item -path "C:\Program Files\New" -force 
你的命令:

remove-item -path C:\Program Files\New -force
被解析为字符串参数
-path
,其值为
C:\Program
和开关参数
-force
。命令
Files\New
中还有一个附加部分。它不是以破折号开始的,因此PowerShell尝试将其绑定到任何位置参数,但它不能,因此它说:

找不到接受参数“Files\New”的位置参数。

只要论点中有空格,就必须在其周围加上单引号或双引号:

remove-item -path "C:\Program Files\New" -force 
你的命令:

remove-item -path C:\Program Files\New -force
被解析为字符串参数
-path
,其值为
C:\Program
和开关参数
-force
。命令
Files\New
中还有一个附加部分。它不是以破折号开始的,因此PowerShell尝试将其绑定到任何位置参数,但它不能,因此它说:

找不到接受参数“Files\New”的位置参数。

只要论点中有空格,就必须在其周围加上单引号或双引号:

remove-item -path "C:\Program Files\New" -force 
你的命令:

remove-item -path C:\Program Files\New -force
被解析为字符串参数
-path
,其值为
C:\Program
和开关参数
-force
。命令
Files\New
中还有一个附加部分。它不是以破折号开始的,因此PowerShell尝试将其绑定到任何位置参数,但它不能,因此它说:

找不到接受参数“Files\New”的位置参数。

只要论点中有空格,就必须在其周围加上单引号或双引号:

remove-item -path "C:\Program Files\New" -force 

@fvu的建议是正确的。您需要在任何路径名周围加引号,并加空格

remove-item -path 'C:\Program Files\New' -force
Powershell非常聪明,当您放置类似于
remove item-path c:\temp
的内容时,它知道“-path”后面的内容应该是字符串,因此PS将其视为字符串。但它不能用空格,因为空格也是参数之间的分隔符。因此,解决方案是显式地将其设置为字符串


在本例中,单引号(
)和双引号(
)之间没有区别。如果需要将Powershell变量注入字符串,则使用双引号。因为您没有这样做,所以我建议使用单引号。

@fvu的建议是正确的。您需要在任何路径名周围加引号,并用空格

remove-item -path 'C:\Program Files\New' -force
Powershell非常聪明,当您放置类似于
remove item-path c:\temp
的内容时,它会知道“-path”之后的内容应该是字符串,因此PS会将其视为字符串。但它不能对空格执行此操作,因为空格也是参数之间的分隔符。因此解决方案是显式将其设置为字符串


在这种情况下,单引号(
)和双引号(
)之间没有区别。如果需要将Powershell变量注入字符串,则使用后者。因为你没有这么做,我建议单身。

@fvu的建议是正确的。您需要在任何路径名周围加引号,并加空格

remove-item -path 'C:\Program Files\New' -force
Powershell非常聪明,当您放置类似于
remove item-path c:\temp
的内容时,它知道“-path”后面的内容应该是字符串,因此PS将其视为字符串。但它不能用空格,因为空格也是参数之间的分隔符。因此,解决方案是显式地将其设置为字符串


在本例中,单引号(
)和双引号(
)之间没有区别。如果需要将Powershell变量注入字符串,则使用双引号。因为您没有这样做,所以我建议使用单引号。

@fvu的建议是正确的。您需要在任何路径名周围加引号,并用空格

remove-item -path 'C:\Program Files\New' -force
Powershell非常聪明,当您放置类似于
remove item-path c:\temp
的内容时,它会知道“-path”之后的内容应该是字符串,因此PS会将其视为字符串。但它不能对空格执行此操作,因为空格也是参数之间的分隔符。因此解决方案是显式将其设置为字符串


在这种情况下,单引号(
)和双引号(
)之间没有区别。如果需要将Powershell变量注入字符串,则使用后者。因为您没有这样做,我建议使用单引号。

尝试在路径周围加引号,如
删除项-路径“C:\Program Files\New”-force
尝试在路径周围加引号,如
删除项-路径“C:\Program Files\New”-force
尝试在路径周围加引号,如
删除项-路径“C:\Program Files\New”-force
尝试在路径周围加引号,如
删除项-path“C:\Program Files\New”-force
您应该养成使用单引号而不是双引号的习惯。您并不是在解释字符串中的表达式,至少不是有意的——而且您也不想意外地这样做。@RyanBemrose-也许,b