何かとてもシンプルなので、私にとってはうまくいきません。私は単一のパラメータを受け入れるコマンドレットを得ました。 Windowsのバッチファイル内でコマンドレットを呼び出そうとしています。バッチファイルには含まれていますWindowsバッチファイルからpowershellコマンドレットを呼び出す
cd %SystemRoot%\system32\WindowsPowerShell\v1.0
powershell Set-ExecutionPolicy Unrestricted
powershell 'C:\convert-utf8-to-utf16.ps1 C:\test.txt'
powershell Set-ExecutionPolicy Restricted
pause
マイPS1ファイルは、再び特別何もしていない:
function convert-utf8-to-utf16 {
$tempfile = "C:\temp.txt"
set-ExecutionPolicy Unrestricted
get-content -Path $args[0] -encoding utf8 | out-file $tempfile -encoding Unicode
set-ExecutionPolicy Restricted
}
私はbatファイルを実行すると、それだけで完了(エラーメッセージなし)に実行され、それが表示されません。 temp.txtファイルを作成します。
powershellコマンドファイルは、PSコマンドプロンプトでは実行できますが、cmdでは実行できません。
誰かが間違っている可能性のあるアイディアを持っていますか?
おかげ
Johannes:cmd.exeはWin32アプリケーションです(ただし、多くの人はまだDOS command.comと考えています)。 [質問は編集する必要があります] – grawity
完全なソースコードを含む最終解決策はありますか? – Kiquenet