バッチスクリプトはうまく動作しているようですが、新しい作業を追加するように編集しています。手動で(Windowsエクスプローラをダブルクリックして)スクリプトを実行すると、上記のエラーメッセージは、スクリプト内のpushdコマンドが検出されるたびに発生します。これらは、今年のドットとスクリプトが正常に動作して以来、そこにあったpushdコマンドです。 手動で実行しているバッチスクリプトとスケジューラで起動したバッチスクリプトの違いはありますか? 手動で実行しているときにエラーメッセージを無効にするにはどうすればいいですか?CMDは現在のディレクトリとしてUNCパスをサポートしていません
答えて
cmd.exe
をダブルクリックすると暗黙的にオプション/C
を使用して開始され、バッチファイルの実行が終了した後コマンドプロセスを閉じ、バッチファイルのディレクトリをカレントディレクトリとして設定します。
ダブルクリックしたバッチファイルがネットワーク共有上にあり、ネットワーク共有をドライブ文字にマッピングしてネットワークドライブを使用する代わりにUNCパスを使用すると、cmd.exe
は、現在のディレクトリとしてUNCパスがサポートされていないことをユーザーに通知し、現在のディレクトリとして%SystemRoot%
(Windowsディレクトリ)を設定します。
バッチファイルが任意のディレクトリから実行されるように設計されている場合、警告は無視できます。つまり、バッチファイルのディレクトリが現在のディレクトリである必要はありません。適切にコード化されたバッチファイル、特にWindowsのタスクスケジューラによって実行されているバッチファイルは、現在のディレクトリである任意のディレクトリで実行できます。
スケジュールタスクとしてバッチファイルを実行すると、タスクスケジューラはコマンドを実行する前に、現在のディレクトリとして%SystemRoot%\System32
(Windowsシステムディレクトリ)を設定します。
も参照してくださいHow can I disable the Universal Naming Convention (UNC) check for command sessions?
あなたは、現在のディレクトリとしてUNCパスでバッチファイルを実行するためのサポートを有効にすると、いくつかのコンソールアプリケーションがあるため、その環境のために設計されていないと動作して失敗する可能性がありますのでご注意ください。
スケジュールされたタスクとして実行するように設計されたバッチファイルを使用している場合は、Executing BAT files in scheduled taskの回答に記載されているすべての面を考慮して、UNCパスを使用してバッチファイルをダブルクリックすると無視できます。 Windowsのタスクスケジューラがでないよう、あなたもショートカットファイルのプロパティでにスタートでこのショートカットを経由してバッチファイルを起動するためのバッチファイルのショートカットファイル(* .LNK)を作成することができますもちろん
は%SystemRoot%\System32
に設定されていますデフォルト。
- 1. Dotfuscatorは現在の.NETフレームワークをサポートしていませんか?
- 2. process.cwd()をbashパスとしてcmdパスではなくディレクトリに戻しますか?
- 3. AWS Cliで現在の作業ディレクトリをパスとして使用
- 4. イメージリーダーをサポートしていますか?現在のdiredctoryとして?
- 5. c#指定されたパスの形式はサポートされていません。 UNCパス
- 6. R CMDでRtoolsディレクトリのgccを探していません
- 7. スタートアップスクリプトCMD結果をUNCパスに出力
- 8. Android - AppCompatは現在のテーマ機能をサポートしていませんエラー
- 9. パスは現在のコンテキストに存在しません。C#.netコーディング?
- 10. CMDディレクトリのファイル名とパス
- 11. 現在のディレクトリは明らかに現在のディレクトリではありません
- 12. ディレクトリ。マップされていないディレクトリが存在しません
- 13. 現在のディレクトリ内のバッチは、現在のディレクトリファイルを参照しています
- 14. UNCパスを使用している場合、os.walk()はサブディレクトリを処理していません
- 15. 現在のディレクトリにセレンのgeckoドライバが存在しません
- 16. JavaScriptが現在のスクリプトと比較してワーカーのパスを解決していません
- 17. fopenは現在のディレクトリにファイルを作成しません。
- 18. 現在のディレクトリが変更された場合、Matlabのaddpath()はパスに張り付いていませんか?
- 19. Process.StartがFilezillaへのUNCパスで動作しません。
- 20. PHPは現在の 'ノート'を削除していません。
- 21. getCurrentItemは現在のアイテムをAndroidで返していません
- 22. 文字列テンプレートは現在のjavascriptバージョンではサポートされていません
- 23. 現在選択されているJavaデバッガは、 'Kotlin Line Breakpoints'タイプのブレークポイントをサポートしていません
- 24. ShareKitは現在iOS 5をサポートしていますか?
- 25. 現在のビューでは、Qt WebDriverとSeleniumでQmlアプリケーションのこのコマンドをサポートしていません。
- 26. cmdを使用して現在のウィンドウを閉じますか?
- 27. UIDatePickerは現在現在の日付を表示していることを認識しません
- 28. 現在のSynchronizationContextはTaskSchedulerとして使用できません
- 29. System.NotSupportedExceptionこの 'System.Linq.Queryable.GroupBy'メソッドのオーバーロードは、現在サポートされていません。
- 30. 'requireAdministrator'権限とリンクされている場合、現在のディレクトリはUNCですか?
ありがとうございました。私は、%SystemRoot%\ System32に設定されたstartでショートカットを作成しようとしましたが、まだUNCメッセージが表示されます。 – Nelson
コマンド__CD__は、UNCパスでは使用できません。したがって、バッチファイルに 'cd" \\ Server \ Share \ folder1 \ folder2 "が含まれていても動作しません。コマンド拡張子をデフォルトで有効にしてコマンド__PUSHD__を使用する必要があります。それ以外の場合は、__PUSHD__は一時的にUNCパスを次の空きドライブ文字にマッピングすることをサポートしていません。詳細については、コマンドプロンプトウィンドウ 'pushd /? 'で実行してください。バッチファイルでコマンド拡張を無効にしているか、コマンドプロセスを開始している可能性があります。 'HKCU \ Software \ Microsoft \ Command Processor \ EnableExtensions'は、Windowsレジストリに値1を持つ必要があります。 – Mofi
私のバッチファイルには、pushdコマンドとpauseコマンドが含まれています。 レジストリをチェックすると、コマンド拡張が有効になっています。 – Nelson