如何在 Invoke-SSHCommand 中无错误地使用字符“$”
How use character '$' in a Invoke-SSHCommand without error
我尝试在 powershell 脚本中从 Linux 服务器获取信息
我使用 Windows 表单并在 RichTextBox 中获取信息。
一些基本命令没有问题。
示例:
$infoversion = Invoke-SSHCommand -Index 0 -Command "uname -r"
$Result_Info.text += "Kernel Version : $($infoversion.Output) + ("`n")
但是当我使用带有管道和 '$' 字符的命令时,它不起作用。
示例:
$infouptime = Invoke-SSHCommand -Index 0 -Command "uptime -p | awk '{print ,,,,,}'"
$Result_Info.text += "Server up since $($infouptime.Output)" + ("`n")
(此命令直接在服务器上运行)
我尝试设置 $
或 'e
或 '$'
或 "+chr(38)+"
但没有任何效果
如果有人能帮助我,那就太好了:)
PowerShell 使用反引号 `
作为可扩展字符串中的转义字符:
$infouptime = Invoke-SSHCommand -Index 0 -Command "uptime -p | awk '{print `,`,`,`,`,`}'"
或者,由于您实际上没有任何需要扩展的变量,您可以使用单引号字符串文字 - 文字 '
的转义序列只是 ''
:
$infouptime = Invoke-SSHCommand -Index 0 -Command 'uptime -p | awk ''{print ,,,,,}'''
我尝试在 powershell 脚本中从 Linux 服务器获取信息
我使用 Windows 表单并在 RichTextBox 中获取信息。
一些基本命令没有问题。
示例:
$infoversion = Invoke-SSHCommand -Index 0 -Command "uname -r"
$Result_Info.text += "Kernel Version : $($infoversion.Output) + ("`n")
但是当我使用带有管道和 '$' 字符的命令时,它不起作用。
示例:
$infouptime = Invoke-SSHCommand -Index 0 -Command "uptime -p | awk '{print ,,,,,}'"
$Result_Info.text += "Server up since $($infouptime.Output)" + ("`n")
(此命令直接在服务器上运行)
我尝试设置 $
或 'e
或 '$'
或 "+chr(38)+"
但没有任何效果
如果有人能帮助我,那就太好了:)
PowerShell 使用反引号 `
作为可扩展字符串中的转义字符:
$infouptime = Invoke-SSHCommand -Index 0 -Command "uptime -p | awk '{print `,`,`,`,`,`}'"
或者,由于您实际上没有任何需要扩展的变量,您可以使用单引号字符串文字 - 文字 '
的转义序列只是 ''
:
$infouptime = Invoke-SSHCommand -Index 0 -Command 'uptime -p | awk ''{print ,,,,,}'''