使用PowerShellScript

时间:2017-10-25 16:04:05

标签: mysql powershell window

我成功地将我的mysql路径添加到Windows变量Path中的系统变量。如果我运行cmd然后运行mysql.exe。它会毫无问题地执行程序。

我想从PowerShell运行mysql.exe

$mysql = "mysql.exe"
$params = "-C","-B","-h$server","-P$port","-u$user","-p$password",$db,"-e$query"
&  $mysql @params

我尝试过./mysql.exe和mysql.exe,但它无法正常工作。

我收到错误:术语' mysql.exe'不被识别为cmdlet,函数,脚本文件或可操作程序的名称。

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

请记住,PowerShell是一个可以运行命令的shell:您将命令放在行的开头,然后放置参数。如果任何参数来自变量,只需将它们放在那里。这就是你需要做的所有事情:

mysql.exe -C -B "-h$server" "-P$port" "-u$user" "-p$password" $db "-e$query"

对于将参数“粘贴”到参数(例如-P<port>)的参数,引用参数,以便PowerShell知道在字符串中进行变量扩展。

当然,在本例中,我们假设mysql.exe位于Path。如果不是,您需要指定mysql.exe的完整路径和文件名,只需输入mysql.exe的完整路径和文件名:

& "C:\Program Files\MySQL\bin\mysql.exe" ...

(该路径已组成。)引号(")是必需的,因为路径包含空格,&告诉PowerShell将引用的字符串作为命令执行(而不是简单将其解释为字符串)。