gpt4 book ai didi

powershell - 什么时候需要在 PowerShell 中使用引号?

转载 作者:行者123 更新时间:2023-12-02 16:23:51 24 4
gpt4 key购买 nike

何时需要在 PowerShell 中将字符串用双引号引起来?我需要下面所有这些吗?

& "$sendemail" -f "$sender" -t "$recipient" -u "$subject" -o message-file="$logpath" -s "$emailserver" -o tls=no

最佳答案

在这种情况下,你不需要任何东西。

  • $sendemail 希望已经是一个字符串,因此调用运算符 & 可以对其进行处理(也许其他任何内容都会被强制转换为字符串)。
  • 所有其他变量也应正确引用并传递:

    PS> $subject = 'subject string'
    PS> $recipient = 'recipient string'
    PS> $logpath = 'log path'
    PS> $emailserver = 'email server'
    PS> $recipient = 'recipient''s name'
    PS> $sender = 'sender''s name'
    PS> $sendemail = './echoargs.exe'
    PS> & $sendemail -f $sender -t $recipient -u $subject -o message-file=$logpath -s $emailserver -o tls=no
    arg 1: -f
    arg 2: sender's name
    arg 3: -t
    arg 4: recipient's name
    arg 5: -u
    arg 6: subject string
    arg 7: -o
    arg 8: message-file=log path
    arg 9: -s
    arg 10: email server
    arg 11: -o
    arg 12: tls=no

如果要将包含特殊字符(例如 shell 运算符或空格)的文字字符串传递给程序,则需要引号,例如:

./echoargs 'some spaces and a | pipe'

如果你的所有参数要么不包含这样的东西,要么已经包含在字符串变量本身中,那么不用引号就可以了。

关于powershell - 什么时候需要在 PowerShell 中使用引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11434388/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com