การใช้ backtick (`) ใช้ได้ผลดีสำหรับฉันถ้าฉันวางไว้ในตำแหน่งต่อไปนี้:
$cmd="\\server\toto.exe -batch=B -param=`"sort1;parmtxt='Security ID=1234'`""
$cmd
ส่งคืนเป็น:
\\server\toto.exe -batch=B -param="sort1;parmtxt='Security ID=1234'"
นั่นคือสิ่งที่คุณกำลังมองหาใช่ไหม
ข้อผิดพลาด PowerShell ทำให้ฉันอ้างถึงโทเค็นที่ไม่คาดคิด 'sort1' และนั่นคือวิธีที่ฉันกำหนดตำแหน่งที่จะใส่ backticks
ไวยากรณ์ @ '... ' @ เรียกว่า "สตริงที่นี่" และจะส่งกลับสิ่งที่ป้อน คุณยังสามารถใช้เพื่อเติมข้อมูลตัวแปรในลักษณะต่อไปนี้:
$cmd=@'
"\\server\toto.exe -batch=B -param="sort1;parmtxt='Security ID=1234'""
'@
สัญลักษณ์เปิดและปิดต้องอยู่ในบรรทัดของตัวเองดังที่แสดงด้านบน