MySQL에서 일부 레코드를 출력하는 스크립트를 실행하려고합니다. 그러나 스크립트를 실행하면 해당 스크립트가 MySQL 도움말 파일을 표시 할 때 매개 변수가 프로그램에 전달되지 않습니다 바르게.PowerShell - 매개 변수가있는 MySQL 실행
여기
$path_to_MySQL = "C:\xampp\mysql\bin\mysql.exe"
$param1 = "-h XXX"
$param2 = "-D XXX"
$param3 = "-u XXX"
$param4 = "-pXXX"
$param5 = "-e ""SELECT 'Test';"""
$params = @($param1, $param2, $param3, $param4, $param5)
write-host $path_to_MySQL $params
&$path_to_MySQL $params
지금이 디스플레이에 출력하는 스크립트
C:\xampp\mysql\bin\mysql.exe -h XXX -D XXX -u XXX -pXXX -e "SELECT 'Test';"
ERROR 2005 (HY000): Unknown MySQL server host ' XXX'
첫 줄 때문에 write-host
라인이다에게이다.
그러나 여기에서 출력을 복사하여 콘솔에서 바로 실행하면 올바르게 실행됩니다. (즉, 올바른 호스트 세부 정보가 있음)
PowerShell 스크립트를 사용하여이 줄을 어떻게 실행할 수 있습니까?
입니다. 그러나 당신이 제안한 것을 확장하고 그것을 작동 시켰습니다. 같은 param에 "-h XXX"를 결합했을 때 좋지 않았습니다. 내가 '& $ path_to_MySQL "-h"$ param1 "-D"$ param2 "-y"$ param3'으로 분리했을 때 잘 동작했습니다. – ChrisAU