string - 命令字符串中带有 & 符号的 PowerShell Invoke-Expression

标签 string powershell command

我试图将一个带有包含&符号的字符串的变量传递到Invoke-Expression中,它告诉我必须将其放在引号中并将其作为字符串传递。

我尝试了转义和使用原始字符串以及变量中的字符串与“”和“”组合的多种组合,但均无济于事。我该怎么做?

代码如下:

$streamout_calmedia01 = `
"rtmp://75.126.42.216/livepkgr/calmedialive01?adbe-live-event=liveevent&adbe-record-mode=record"

$streamcmd_calmedia01 = "C:\avconv\usr\bin\avconv.exe 'rtmp://75.126.42.211/transcoder/mobileingest live=1' -f flv -c:v libx264 -r 30 -g 120 -b:v 410000 -c:a aac -ar 22050 -b:a 64000 -strict experimental -y $streamout_calmedia01"

Invoke-Expression "$streamcmd_calmedia01"

我尝试在 & 符号之前使用 ` 并在放入变量之前在 Invoke-Expression 前面使用双引号,

我尝试过(如图所示)使用 Invoke-Expression 的 -Command 在变量周围添加引号,还添加了“&”和“&”并将“&”符号连接到字符串。

我需要其中的&符号,以便Flash Media Server从流名称中解析命令并在开始HTTP实时流分块之前刷新先前记录的数据。

最佳答案

& 符号必须在字符串 "&"用双引号引起来,因此您需要转义内部双引号

$streamout_calmedia01 = "rtmp://...vent`"&`"adbe-record-mode=record"

或者将字符串放在单引号中

$streamout_calmedia01 = 'rtmp://...vent"&"adbe-record-mode=record'

关于string - 命令字符串中带有 & 符号的 PowerShell Invoke-Expression,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12438479/

相关文章:

c - realloc() 泄漏内存

java - String.format 向长/字符串添加点

sharepoint - 如何在库中查找文件(我是初学者)

powershell - 按前导数字数量对文件版本进行排序

PowerShell摆脱最后的 `n` r?

C++ "cin"只读取第一个字

ios - 不需要的信息显示在 NSString 的文本标签中

vim - 中止击键序列?

C程序改变目录

linux - 'cd' 命令是否可以使用 'which' 命令?(我想将这两个命令合并为一个。)