Powershell中的TabCMD

时间:2015-11-14 22:55:04

标签: powershell batch-file cmd tableau

我在将bat命令转换为我的Powershell脚本时遇到问题。我试图在我的PS脚本中运行TabCMD(Tableau Command)。

以下bat文件有效:tabCMD.bat

cd C:\Program Files\Tableau\Tableau 9.0\bin
tableau refreshextract --server "https://online.tableausoftware.com" --username "myEmail@email.com" --password "password" --site "gameMetrics" --project "acquisition" --datasource "VisExtract"

我想将其转换为Powershell脚本:PSTabCMD.ps1

$server='https://online.tableausoftware.com'
$username='myEmail@email.com'
$password='password'
$site='gameMetrics'
$project='acquisition'
$datasource='VisExtract'


Set-Location "C:\Program Files\Tableau\Tableau 9.0\bin"

$TabCMD = "tableau refreshextract --server $server --username $username --password $password --site $site --project $project --datasource $datasource"

Invoke-Expression -Command:$TabCMD

write-host 'Command complete!!'

我收到以下错误:

'tableau : The term 'tableau' is not recognized as the name of a cmdlet, function, script file, or operable program.'

我也尝试将Invoke-Expression更改为& “$ TabCMD”启动 - 处理$ TabCMD 但这些也不起作用。

我需要更新几个摘录,并且不想调用一堆bat文件。

有人知道如何在Powershell中运行此TabCMD命令吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

tableau更改为.\tableau,它可能会有效。 PowerShell不允许您在当前目录中运行,而无需显式引用当前目录。