私は標準のWindows BAT/CMDファイルを作成しています。このCMDファイルがPowerShellから実行されているかどうかを確認するIF文を作成します。どうやってやるの?私はコマンドラインからPowerShellに入っているかどうかを検出できますか?
編集:私の根本的な問題は、%1==A=B
でtest.cmd "A=B"
結果はCMDから実行したときにということでしたが、%1==A
と%2==B
PowerShellのから実行します。どちらの場合も、スクリプト自体は古いWindowsコマンドラインスクリプトとして実際に実行されるため、Get-ChildItemをチェックすると常にエラーが発生します。
cmd.exeを起動したプロセスを見てからpowershellランタイムをすべて捕まえない限り、簡単な方法はないと思います。あなたの目標が何であるかを説明できれば、あなたの問題を解決する別の方法を提案することができます。 –
あなたは正しいです。 update – Nilzor
http:// stackoverflowを参照してください。com/questions/4940375/how-do-i-pass-an-equal-sign-call-a-batch-script-in-powershellで回避方法について説明します –