【问题标题】:Concatenating variables to pass to exe in powershell连接变量以在powershell中传递给exe
【发布时间】:2017-09-21 17:31:35
【问题描述】:

我正在编写一个使用输入参数调用 exe 的 powershell 脚本。这是我的代码:

param([string]$sourceIP, [string]$destinationIP, [string]$prefix)
$ErrorActionPreference = "Stop"
try
{
    Write-Host "Starting Copy of Keyspaces to Dev"
    Write-Host "Copying One"
    .\CopyDatabase.exe -s $sourceIP -o $($prefix)_one -d $destinationIP -n $($prefix)_one -c
    Start-Sleep -s 2
    Write-Host "Copying Two"
    .\CopyDatabase.exe -s $sourceIP -o $($prefix)_two -d $destinationIP -n $($prefix)_two -c
    Start-Sleep -s 2
    Write-Host "Copying Three"
    .\CopyDatabase.exe -s $sourceIP -o $($prefix)_three -d $destinationIP -n $($prefix)_three -c
    Start-Sleep -s 2
    Write-Host "Copying Four"
    .\CopyDatabase.exe -s $sourceIP -o $($prefix)_four -d $destinationIP -n $($prefix)_four -c
    Write-Host "Finished Backup"
}
catch
{
    write-host "EXCEPTION:"
    write-host "Exception Type: $($_.Exception.GetType().FullName)"
    write-host "Exception Message: $($_.Exception.Message)"
    exit -1
}

它按我的预期工作,除了$($prefix)_keyspace 给了我prefix _keyspace 我想要的prefix_keyspace。我确信我可以为每个连接编写一个函数或创建一个新变量,但我想知道是否有一个可以用于此的命令可以让我不必这样做。谢谢!

【问题讨论】:

  • ${prefix}_one
  • @PetSerAl 完美,谢谢

标签: powershell


【解决方案1】:

用这个替换try块:

try
{
    Write-Host "Starting Copy of Keyspaces to Dev"
    Write-Host "Copying One"
    .\CopyDatabase.exe -s $sourceIP -o ${prefix}_one -d $destinationIP -n ${prefix}_one -c
    Start-Sleep -s 2
    Write-Host "Copying Two"
    .\CopyDatabase.exe -s $sourceIP -o ${prefix}_two -d $destinationIP -n ${prefix}_two -c
    Start-Sleep -s 2
    Write-Host "Copying Three"
    .\CopyDatabase.exe -s $sourceIP -o ${prefix}_three -d $destinationIP -n ${prefix}_three -c
    Start-Sleep -s 2
    Write-Host "Copying Four"
    .\CopyDatabase.exe -s $sourceIP -o ${prefix}_four -d $destinationIP -n ${prefix}_four -c
    Write-Host "Finished Backup"
}

这应该可以完成您的工作。未测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 2023-01-02
    • 1970-01-01
    • 2014-12-13
    • 2021-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多