• ベストアンサー

ディスクチェックをタスクで、夜中、自動実行したいのですが・・・(Y・N?)の部分で止まってしまいます。

スキャンディスクを夜中に自動実行させたいと思い、タスクでファイル名を実行(CHKDSK.EXE /f)させようとしたのですが、 「再起動が必要ですが、再起動後実行しますか?(Y・N?)」 と出てくる為、キーを打つまで実行されませんでした。 再起動は、「パワーユーティリティー」というソフトで自動的に行える様なので、残る課題は、(Y.N?)を自動で「Y」を選択することなのですが・・・ 色々、ホームページ中を探してみたのですが見つからず、ここでもしご存知の方がおられれば、と思い記載させてもらいました。 どうぞ、よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • elmclose
  • ベストアンサー率31% (353/1104)
回答No.2

No.1 への補足を読み、私も試してみました。 OSは、Windows XP です。 結果としては、できました。 masazousan さんの場合、指定したファイルのパス名が間違ってないでしょうか。 また、「チェックディスクは一瞬起動し、すぐ終了しました」と書いておられますが、そのときのメッセージは確認されましたでしょうか。chkdsk プログラムからの標準出力をテキストファイルにリダイレクトすることにより、確認してみてはどうでしょうか。 -- 私のやり方は、c:\test.bat というファイルに、 chkdsk /f < c:\in.txt > c:\out.txt の1行だけを書き、そして「ファイル名を指定して実行」からこの c:\test.bat を実行しました。 その結果、 c:\out.txt のファイルには、下記のメッセージが出力され、そして、Wiendowsの再起動後に実際にボリュームのチェックが実行されました。 c:\out.txt に出力されたメッセージ 「 ファイル システムの種類は NTFS です。 現在のドライブはロックできません。 ボリュームが別のプロセスで使用されているため、CHKDSK を 実行できません。次回のシステム再起動時に、このボリュームの チェックをスケジュールしますか (Y/N)? Y 次回のシステム再起動時に、このボリュームはチェックされます。 」

masazousan
質問者

お礼

お陰様で、出来ました! バッチファイルというものの事も、ぼんやりとですが、何が出来るのか、感じがつかめ、いいきっかけにもなったかと思います。 「f」の部分を「r」でやってみましたが、詳しく検査していた分、もっと時間がかかりました。 本当にお世話になりました・・・ありがとうございました。

masazousan
質問者

補足

ありがとうございます! 試してみます。

その他の回答 (2)

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.3

No.1の方の補足です。 >キーボードからの入力しかだめなパターンなのですかね?ざんねんでした そもそも、パスの指定がないので、マイドキュメントにあるかどうかがわからず、これは裏でエラーになっていますね。 やるなら、例えば、C:\直下に、先ほどの in.txt を移したとして、以下のようにして実行する必要があります。 chkdsk /f < c:\in.txt いずれにせよ、これでもうまくいかないですけどね。 バッチにすれば可能です。 手順としてはこんな感じです。 1.フォルダオプションで拡張子表示にする(間違いを避けるため) 2.in.txt を C:\直下に移す(とりあえず) 3.テキストファイルを作り以下をコピペする chkdsk /f < c:\in.txt 4.テキストファイルを保存し、名前を dochkdsk.bat にする 5.以下を実行する c:\dochkdsk.bat #ついでに久々にスキャンしましたよ、私w

masazousan
質問者

お礼

「f」を「r」でやってみました。 みなさんのおかげで、難問に突破でき、とても有難く思っています。 バッチファイル、もっと勉強してみます。 おもしろそうですね・・・ そして、パソコンのメンテナンスもこれからしっかりやっていきます。 ありがとうございました。

masazousan
質問者

補足

ANo2の方にも教えていただいた様に、これがバッチファイル、というものなのですね・・・ ここ数日調べて、コマンドプロントとか、パラメータとか、すべて初耳でしたが、ここまでは何とか1人で調べられましたが、バッチファイルというのは、言葉だけ聞いたことがある程度で、調べることが出来ませんでした。 もっと素人には踏み込めない範囲かと思っていたのに・・・これからまた、知識を得ていこうと思います。 これらの方法では何とか出来そうですね! 少し時間がかかるかと思いますが、今から試してみます。

  • elmclose
  • ベストアンサー率31% (353/1104)
回答No.1

キー入力「Y」をファイルに書いておき、そのファイルを標準入力に流し込めば良いのではないでしょうか。以前、DOSの時代(まだWindowsがない頃)そうしていました。 具体的には、 in.txtというファイル(ファイル名は何でも良い)の1行目に「Y」と書いておき、実行するタスクとして、 CHKDSK.EXE /f <in.txt とします。 もし、そのchkdskのプログラムが標準入力からの読み込みを行なわずに、キーボードを直接センスしていたりすると、うまくいかないと思います。 一度、テストとして試してみてください。

masazousan
質問者

補足

メモ帳にyと記入し、inと名前を付けて、マイドキュメントに保存し、「ファイル名を指定して実行」で CHKDSK.EXE /f <in.txt と入れて、実行すると、チェックディスクは一瞬起動し、すぐ終了しました。 そのあと再起動しましたが、普通に起動してしまいました。 キーボードからの入力しかだめなパターンなのですかね?ざんねんでした。

関連するQ&A