3

私は最初のPowerShellスクリプトを試していますが、次のコードを実行すると不正なパラメーターエラーが発生します。powersehllのコマンドに引数を渡すにはどうすればよいですか?

& "bcdedit" /store c:\boot\bcd /set {bootmgr} device partition=C:

編集: これのための作業コードは次のとおりです:

& "bcdedit" /store c:\boot\bcd /set "{bootmgr}" device partition=C:
4

2 に答える 2

4

中括弧はすべてを台無しにしました。引用符を付ける{bootmgr}ことで問題が解決しました。

& "bcdedit" /store c:\boot\bcd /set "{bootmgr}" device partition=C:
于 2012-06-01T23:01:29.137 に答える
2

あなたが直面している問題は、PowerShell パーサーがパーサーとは異なる動作をすることですcmd.exe。これを回避する 1 つの方法は、コマンドを に渡してcmd.exe解析を実行させることです。

これを行うにはcmd.exe/cオプションを単一引用符で囲んだ文字列としてコマンドを渡します。

cmd.exe /c 'bcdedit /store c:\boot\bcd /set {bootmgr} device partition=C:'

この方法は、使用しているコマンドが文字列で囲まれた引数を必要とする場合に特に便利です。

于 2012-06-01T18:09:38.720 に答える