【问题标题】:PS Unexpected TokenPS 意外令牌
【发布时间】:2015-02-02 06:53:07
【问题描述】:

我正在尝试运行以下 PowerShell 脚本:

$server=MACHINE_NAME

if (Test-Path \\$server\c$\test.txt) {$server"/yes`n" | out-file c:\log.txt -append}
else {$server"/no`n" |out-file c:\log.txt -append}

当我尝试运行它时,我得到:

表达式或语句中出现意外标记“/yes”。在 line:2 char:44

不允许使用空的管道元素。在 line:2 char:53

表达式或语句中出现意外标记“/no”。在 line:3 char:13

不允许使用空的管道元素。在 line:3 char:21

我预计这是我没有看到的简单事情。我对 PowerShell 很陌生。

【问题讨论】:

    标签: powershell


    【解决方案1】:

    您不能让变量与字符串文字相邻;这是无效的语法。

    如果您想组合这两个字符串,请使用+ 运算符:

    $server + "/yes`n"
    

    或变量插值:

    "$server/yes`n" 
    

    【讨论】:

      【解决方案2】:
      $server=MACHINE_NAME
      if(Test-Path ("\\{0}\c$\test.txt" -f $server)) 
      {
          ("{0}/yes`n" -f $server) | out-file "c:\log.txt" -append
      }
      else
      {
          ("{0}/no`n" -f $server) | out-file "c:\log.txt" -append
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-08-06
        • 2014-11-29
        • 2018-11-19
        • 2017-04-17
        • 2019-05-26
        • 2014-02-19
        • 2022-01-08
        • 2017-03-15
        相关资源
        最近更新 更多