ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.3938001 バッチでデフラグ
質問者:fineshot33 Windows2003R2の試用版で色々と試しているのですが、バッチでデフラグを行うことがどうしてもできません。

バッチに書いてあるものは「defrag c: /f」の一行のみです。
尚、C:\batの直下に置いてあります。プロンプトで上記の一行を入力すると正常に
デフラグが開始されるのですが、バッチにしてキックすると、「c:\bat>defrag c: /f」が延々と流れていきます。
ちなみにバッチそのものは、どのディレクトリに置いても変化はありません。
(黒画面の表示は変わりますが、延々文字が流れていくのは変わりありません)

何故なんでしょうか???
アドバイスを宜しくお願い致します。
困り度:
  • すぐに回答を!
質問投稿日時:
08/04/10 18:09
この質問に対する回答は締め切られました。

回答良回答20pt

ANo.4 バッチのファイル名を defrag.bat にしているので自分自身を呼び出してしまっています。

解決方法は
(1) defrag.bat を defragc.bat など別の名前にリネームして実行する。
(2) バッチ内の記述を
defrag.exe c: /f
とexeファイルを実行することを明記する。

のいずれかを試してみてください。
回答者:pita-gora
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:
08/04/13 10:32
この回答へのお礼ありがとうございます。exeを追記することで解決しました。

回答良回答10pt

ANo.3 #2ミスです
defrag.exeのあるフルパスを記載です
回答者:Tonji_W
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:
08/04/11 18:39
この回答へのお礼ありがとうございました。
defrag.exeとすることで解決しました。

回答

ANo.2 C:\Documents and Settings\Administrator>defrag c: /f
↑これをすべて書いたメモ帳をdefrag.batにリネームすてもだめですか?
単にパスが通ってないだけでは?フルパスで記載すればいいのでは?
そうすればcドライブの直下に置かなくても動きそうな気がしますが。。
回答者:Tonji_W
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:
08/04/11 18:37
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

ANo.1 Cドライブはシステムファイルですから、これをMS-DOS窓で行なうことはできません。
スタート→すべてのプログラム→アクセサリー→システムツール→デフラグと辿ります。Cドライブを指定すると、再起動が始まり、WINDOWSが立ち上がる前にデフラグは始まります。 Cドライブ以外だと当該HDは使えなくなるぞという警告が出て、これを承認すると、これはマルタイで始まります。
回答者:Willyt
種類:アドバイス
どんな人:経験者
自信:自信あり
回答日時:
08/04/10 18:26
この回答へのお礼書き方が悪かったようでスイマセン。
コマンドプロンプトにて以下のように入力するとCでも他のボリュームでもデフラグが可能です。

C:\Documents and Settings\Administrator>defrag c: /f
上記を実行すると、デフラグが始まり、
分析レポート
74.50 GB 合計, 69.01 GB (92%) 空き, 0% 断片化 (0% ファイルの断片化)

最適化のレポート
74.50 GB 合計, 69.01 GB (92%) 空き, 0% 断片化 (0% ファイルの断片化)
のようなレポートが表示されます。

そこで、defrag c: /fとだけ記述したメモ帳をdefrag.batとしてC:\bat直下に保存しました。
そしてdefrag.batをキックしてみたところ、
defrag c: /f
defrag c: /f
defrag c: /f
defrag c: /f
と延々とコマンドが流れていくだけでデフラグが実施されないのです。
どのように解決したらいいのでしょうか?

ちなみに、タスク処理を行うつもりですのでGUIでの操作は考えていません。
何卒宜しくお願い致します。