使用字符串执行命令在powershell中不起作用

ste*_*tef 3 powershell

这是我的代码,它不起作用:

$brisanje=dat.txt, dat2.txt
Remove-Item $brisanje
Run Code Online (Sandbox Code Playgroud)

我在这里得到的错误是

Remove-Item:找不到路径'C:\ Users\stefan\Desktop\brisanjedat\dat.txt,dat2.txt'因为它不存在.

但是当我像这样写它时,它就像一个魅力:

Remove-Item dat.txt, dat2.txt
Run Code Online (Sandbox Code Playgroud)

几个小时我一直坚持这个问题,任何解决方案?

Mat*_*sen 5

PowerShell解析器有两种模式,具体取决于上下文.

参数模式上下文中(如同的情况Remove-Item dat.txt,dat2.txt),它将裸字视为可扩展字符串列表.

表达式模式(默认值)中,表达式开头的单词被视为命令,powershell将尝试解析它,这就是您看到错误的原因.

使用引号确保解析器知道您是dat1.txt,dat2.txt一个字符串数组:

$brisanje="dat.txt","dat2.txt"
Run Code Online (Sandbox Code Playgroud)

有关Get-Help about_Parsing详细信息,请参阅输出