1. ホーム
  2. powershell

[解決済み] PowerShellでスペースがあるとパスが分割される。

2023-03-04 22:33:10

質問

スペースを含むパスでexeを起動すると、powershellで問題が発生します。

PS C:\Windows Services> invoke-expression "C:\Windows Services\MyService.exe"

C:」という用語は、コマンドレット、関数、スクリプトファイル、または操作可能なプログラムの名前として認識されません。名前のスペルを確認するか、パスが含まれている場合は、パスが正しいことを確認して、もう一度試してください。

Windows' と 'Services' の間のスペースで分割されているようです。この問題を回避する方法について何か思い当たることはありますか?

どのように解決するのですか?

これはあなたが望むことを行うのでしょうか?

& "C:\Windows Services\MyService.exe"

使用方法 & は、呼び出し演算子 のように、名前またはパスが引用符で囲まれた文字列に格納されているか、または変数を通して参照されているコマンドを呼び出すために使用されます。 Invoke-Expression は、この特定のケースで使うべき間違ったツールであるだけではありません。 であるべきです。 一般に 避けるべき .