Windows 2008 タスク プランが bat スクリプトの実行に失敗したときに 0x1 を返す問題の解決方法

Windows 2008 タスク プランが bat スクリプトの実行に失敗したときに 0x1 を返す問題の解決方法

テスト環境:

C:\>systeminfo | findstr /c:"OS 名"
OS名: Microsoft Windows Server 2008 R2 Enterprise

Windows 2008でbatファイルを実行するタスクスケジュールを作成するときに、多くの人がこの問題に遭遇します。タスクスケジュールの実行後に返されるステータスコードは、通常の0x0ではなく0x1です。

私も今日この問題に行き詰まり、トラブルシューティングにほぼ 1 日を費やしました。 bat スクリプトを単独で実行するとすべて正常に動作し、Windows 2003 タスク スケジュールで bat スクリプトを実行しても問題はありませんが、Windows 2008 タスク スケジュールに配置すると動作しません。国内外のウェブサイトを検索して、ようやく注意事項を全て集めることができました。手順は次のようにまとめられます。

1. タスク プランを実行するユーザーのパスワードの有効期限が切れていないことを確認します。条件が許せば、不要なトラブルを避けるためにパスワードを無期限に設定できます。

中国のシステムには期限切れのないパスワードオプションがある

2. タスク マネージャーを開き、タスク スケジューラ ライブラリを右クリックして、タスクの作成を選択します。ここでは基本タスクの作成を選択しないでください。

3. [全般] タブで、[ユーザーがログオンしているかどうかに関係なく実行する] を選択し、[最上位の特権で実行する] をオンにして、ドロップダウン リストから [Windows Server 2003] を選択します。Windows Server 2008 は選択しないでください。

中国のシステムは、次の図に対応しています。

4. トリガー タブには特別なものはありません。必要に応じて実行時間を設定するだけです。

5. [アクション] タブで、[プログラム/スクリプト] 入力ボックスにスクリプト名を入力します。ここではパスを含めないでください。 [開始] 入力ボックスに、スクリプトが配置されているパスを入力します。ここでは引用符を追加しないでください。

6. bat スクリプトの最後に次の行を追加します。

折りたたむか展開するには(ここ)をクリックしてください

/b 0 を終了する

終了コードを明示的に指定しない場合、タスク スケジューラはスクリプトの実行が失敗したと見なします。

Window Server 2012より前のバージョンでは、スケジュールされたタスクを実行するためのパスは必要ありません。

Windows Server 2012 以降のバージョンでは、スケジュールされたタスクを実行するためのパスを設定する必要があります。バッチ プログラムはダブルクリックすると正常に実行できますが、Windows のスケジュールされたタスクに入れた場合、エラー コード 0x1 は報告されません。

エラーの原因: プログラムとスクリプト内のバッチ スクリプトにはディレクトリ構造がありますが、バッチ スクリプトが配置されているディレクトリへのパスが開始時に構成されていません。

上記は、Windows 2008 タスク プランが bat スクリプトの実行に失敗し、0x1 を返す問題に対する詳細な解決策です。win2008 bat スクリプトが 0x1 を返さないことの詳細については、123WORDPRESS.COM の他の関連記事に注意してください。

以下もご興味があるかもしれません:
  • Windows 2008 R2 タスク スケジューラでのバッチ処理失敗の問題の解決方法

<<:  Mysql 更新マルチテーブル共同更新方法の概要

>>:  この記事では、jsのデータ型とデータ構造の世界を紹介します。

推薦する

MySQL セキュリティ管理の詳細

目次1. 順番に紹介する2. ユーザーを作成する3. ユーザーアカウントを削除する4. アクセス権5...

MySQL トランザクションの概念と使用法の詳細な説明

目次情事の概念取引の状態取引の役割取引の特徴トランザクション構文トランザクション対応ストレージエンジ...

MySQL と接続関連のタイムアウトの詳細な概要

MySQL と接続関連のタイムアウト序文:今日、同僚から、データ量が多いときに MySQL データベ...

MySQL クロステーブルクエリとクロステーブル更新

SQL の基礎知識がある友人は、「クロステーブル クエリ」について聞いたことがあるはずですが、クロス...

Web ページ制作におけるテーブル属性 CellPad、CellSpace、Border の説明と使用

cellspacing は表内のセル間の距離です。セルパディングは、表のセル内の空白スペースです。一...

Rancher のデプロイメントと K8S クラスターのインポートに関する問題

Rancher のデプロイメントには、次の 3 つのアーキテクチャがあります。高可用性 Kubern...

Vue+video.jsはビデオプレイリストを実装します

この記事では、ビデオプレイリストを実装するためのvue + video.jsの具体的なコードを参考ま...

Vueはechartsを使用して組織図を描画します

昨日、円形のプログレスバー (Vue 円形プログレスバーを参照してください) についてブログを書きま...

Linuxでディスクをマウントする方法

仮想マシンを使用しているときに、ディスク容量が不足し、継続使用するためにディスクをマウントする必要が...

Linux の chown コマンドと chmod コマンドの違いの詳細な説明

Linux システムでは、chmod コマンドと chown コマンドの両方を使用して権限を設定でき...

マインドマップを使って4つの側面からWeb標準の価値を議論する

このアイデアを改善し、より良い意見を得られることを期待して、議論を刺激するためにいくつかの値を大まか...

SecureCRT に基づくリモート Linux ホストへのファイルのアップロードとダウンロードのグラフィカルな手順

wget や curl ツールを使用して、Linux サーバーで大規模なネットワーク ファイルを直接...

Vue.js で AntV X6 を使用する手順の例

目次0x0 はじめに0x1 インストール0x2 ノードサイドバー0x3 統合例0x0 はじめにプロジ...

Mysql マルチテーブル結合クエリの実行の詳細について簡単に説明します。

まず、このブログのケースデモンストレーション テーブルを作成します。 create table a(...

Mysqlはブール型の演算を設定します

Mysqlはブール型を設定します1. Tinyintタイプテストテーブルを作成し、blフィールドをブ...