バッチファイルの見方について教えて下さい

このQ&Aのポイント
  • バッチファイルの見方について教えて下さい。バッチファイルを選択⇒右クリック⇒編集とすると、テキストが表示されますが、内容がわかりません。
  • バッチファイルのdos画面での実行についても教えてください。@echo offから下の部分はどういった意味ですか?
  • copyコマンドで指定したファイルを他のドライブにコピーする際、パスには\を付け加える必要がありますか?
回答を見る
  • ベストアンサー

バッチファイルの見方について教えて下さい。

バッチファイルを選択⇒右クリック⇒編集とすると テキストが表示されるのですが、 どういう事を書いてるのかよくわかりません。 解る方、教えて下さい。宜しくお願いします。 【pingnum.batの時】 ping 198.105.232.1 ping 198.105.232.6 @echo off echo ... echo Click the Help window to continue with the Internet troubleshooter. 実行するとdos画面でPingが実行されるのですが @echo offから下の部分はどういった意味でしょうか? echo Click the Help window to continue with the Internet は単なるメッセージ?かと思うのですが・・・。 また、下記についてもお願いします。 copyコマンドで指定したファイルを他のドライブに パスをきる時は、\\を付け加える?? A>TYPE BACK.BAT ECHO OFF CLS ECHO バックアップ ECHO ON XCOPY C:\WINDOWS\デスクトップ\コピー元\data\* C:\WINDOWS\デスクトップ\コピー先\data /E/C/H/R/Y ECHO OFF ECHO 完了しました

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

  • ベストアンサー
  • ykkw_2001
  • ベストアンサー率26% (267/1014)
回答No.1

>@echo offから下の部分はどういった意味でしょうか? >echo Click the Help window to continue with the Internet >は単なるメッセージ?かと思うのですが・・・。 単なるメッセージを表示するだけです。 @echo off は、「echo off」の行自体を表示しないために"@"を付けています。見栄え良くしたかったんでしょう。 >copyコマンドで指定したファイルを他のドライブに >パスをきる時は、\\を付け加える?? こちらは、ご質問の意味(やりたいこと)が良くわからなかったんですが、 >XCOPY C:\WINDOWS\デスクトップ\コピー元\data\* C:\WINDOWS\デスクトップ\コピー先\data /E/C/H/R/Y から推察すると、 XCOPY C:\WINDOWS\デスクトップ\コピー元\data C:\WINDOWS\デスクトップ\コピー先\data /E/C/H/R/Y/I と直せば、多分希望する結果になると思います。 フォルダ丸ごとコピーですよね。 "@" は別として、各コマンドについては、MS-DOSプロンプトで、簡単なヘルプを出して調べることをお勧めします。 たとえば、 xcopy /?[enter] という感じで、コマンドに"/?" オプションをつけると出てきます。

rewind
質問者

お礼

回答ありがとうございました。 実際に試してみて理解する事ができました。

関連するQ&A

  • 【初心者】バッチファイルの作成方法について

    Windowsバッチファイルの作成方法について質問させて下さい。 以下の処理を行うバッチファイルの作成を考えています。 ・C:\Program Files\Microsoft Visual Studio 8\VCへ移動 ・上記フォルダ内にある vcvarsall.batファイルを実行 ・C:\Program Files\Microsoft Platform SDKへ移動 ・上記フォルダ内にある SetEnv.cmdファイルを実行 ・Cドライブ直下(C:\)へ移動 目的としては、「Microsoft Visual C++2005」の環境設定ファイルを バッチファイルにて一括実行することです。 実際に自分で作成したバッチファイル(setenv.bat)の内容は 以下のとおりです。 ---------------------------------------------------------- @echo off echo setenv.batを実行します cd C:\Program Files\Microsoft Visual Studio 8\VC echo vcvarsall.batを実行して環境設定をおこないます vcvarsall.bat cd C:\Program Files\Microsoft Platform SDK echo SetEnv.cmdを実行して環境設定をおこないます SetEnv.cmd cd C:\ ---------------------------------------------------------- [実行結果] C:\>setenv.bat setenv.batを実行します vcvarsall.batを実行して環境変数を設定します Setting environment for using Microsoft Visual Studio 2005 x86 tools. 実行結果のとおり、setenv.batの実行までしか処理が行われず、 vcvasall.batは実行されません。 原因と対処方法について、どなたか教えて頂けませんでしょうか?

  • バッチからバッチを逐次よぶ方法

    a.bat 、 b.bat があり c.batでこの2つを呼ぶとします。 ---c.bat--- @echo off echo Start a.bat b.bat echo end ---------- しかし、このままだと、a.batが終了しないうちに、次のb.batが始まってしまうようです。 a.batが終了 → b.bat開始 → b.bat終了 → end と表示 となるようにしたいのですが、どのようにしたらよいでしょうか。

  • win98でのバッチファイルの挙動

    初めて質問させて頂きます。 win98上にて、あるバッチファイルを作っているのですが、if文の分岐条件部分でエラーが出てうまく動きません。あまりに単純で質問するのもはばかられたのですが、他に参考になるサイトを見つけることができず、やむなく質問させていただきました。 以下のバッチファイル(test.dat)をデスクトップ上でダブルクリックにて実行。 --------------------------- if exist "C:\work\" ( cd C:\work ) else ( echo: echo C:\workが存在しません。 ) ----------------------------- 以下実行結果 ----------------------------- C:\WINDOWS\デスクトップ> C:\WINDOWS\デスクトップ>if exist "C:\work\" ( C:\WINDOWS\デスクトップ> cd C:\work C:\work>) else ( コマンドまたはファイル名が違います. C:\work> echo: C:\work> echo C:\workが存在しません。 C:\workが存在しません。 C:\work>) コマンドまたはファイル名が違います. C:\work> ------------------------------- なぜelseを認識してくれないのでしょうか? 本当に困っております。どうぞよろしくお願い致します。

  • バッチファイルについて

    @cmd /k 上記の内容で「a.bat」というファイル名で保存しました。 この保存したファイルをダブルクリックすると、バッチファイルが格納されてるフォルダのパスがコマンドプロンプト上に表示されます。 パス表示後に、いろいろな動作(「echo~」など)を実行したいと思っているんですが、うまくいきません。 どうやら一番上の「@~」を記述したものは、そのあとに「echo~」などを記述しても実行してくれないみたいです。 「@cmd /k」実行後に何か(「echo~」など)を実行するにはどうしたらいいですか?

  • hostsファイルをコピーするバッチを実行するとデスクトップ上にtempフォルダが作成されてしまう

    hostsファイルをコピーするバッチファイルを作成しました。 バッチファイルの記述は以下のとおりです。 --------------------------------- @ECHO OFF CLS ECHO HOSTSファイルをアップデートします。 ECHO よろしければ、ENTERキーを押下してください。 ECHO 中止したい場合は、右上の×をクリックしてください。 PAUSE > NUL ECHO . ECHO HOSTSファイル コピー中... copy hosts %winDir%\system32\drivers\etc > NUL ECHO HOSTSファイル コピー終了 ECHO . ECHO アップデートが終了しました。 ECHO もう一度、ENTERキーを押下してください。 PAUSE > NUL EXIT -------------------------------------- バッチファイル(update.bat)とコピーするhostsファイルをまとめてexeファイルに変換し、exeファイルを実行してみると、hostsファイルは正常にコピーされるのですが同時にデスクトップ上に"c"というフォルダが作成されてしまいます。 cフォルダ内にはさらにwindowsフォルダが作成され、さらにwindowsフォルダ内にはtempフォルダが作成されていましたので、おそらくはc:\windowsフォルダ内のtempに記述されるべきものがユーザープロファイル内のデスクトップ上にできあがってしまうようなのですが、このcフォルダが作成されないようにするにはどうすればいいのでしょうか?

  • バッチファイルで実行できたりできなかったり

    こんにちは。 バッチファイルとコマンドプロンプトについて、少々お伺いしたいことがあります。 まず、コマンドプロンプトで以下のコマンドを打ち込んでみたところ、すべて正常に実行することができました。 ping [example.com] > result.txt tracert [example.com] >> tr_result.txt ipconfig /all > ipc_result.txt 次に、各コマンドをテキストファイルに書き込んで、それぞれ "p_test.bat" # 内容は ping コマンド "tr_test.bat" # 内容は tracert コマンド "ipc_test.bat" # 内容は ipconfig コマンド と命名しデスクトップに配置、ダブルクリックで実行してみました。 すると、このうち正常に実行(結果をテキストファイルに出力)されたのは tr_test.bat のみでした。 ここで質問なのですが、なぜこのような違い(バッチファイルにすると実行できるものとできないものに分かれる)が起こるのでしょうか? バッチファイルの作り方やとコマンドプロンプトについて調べてみましたが、説明を見つけることが出来ませんでした。 この辺の理論について詳しい方がおりましたら、ご教示頂きたく思います。 ちなみに、OS は Windows XP SP2 です。 よろしくお願いいたします。

  • バッチファイル

    バッチファイルで cd C:\MYDOCU~1\TEST dir の2行を実行するようにしたつもりですが カレントでdirされました。 現在のバッチは @ECHO OFF cd C:\MYDOCU~1\TEST dir なんですが、どこを直せばよいですか?

  • 連続でpingを実行するバッチファイルがうまくいきません。

    連続でpingを実行するバッチファイルを作成してたんですが、うまくいきません。 実行すると、"プロセスはファイルにアクセスできません。別のプロセスが使用中です。"って表示されます。 日付と時間はテキストに記載されるんですが、pingの結果が記載されません。 バッチファイルの内容は以下の通りです。 @echo off echo -------------->>d:\result.txt echo PINGテスト結果>>d:\result.txt echo -------------->>d:\result.txt echo 実行年月日 >>d:\result.txt date /T>>d:\result.txt echo 実行時間 >>d:\result.txt time /T>>d:\result.txt for /L %%f in (1,1,254) do ping -n 4 -w 50 192.168.100.%%f>>d:\result.txt exit コマンドプロンプトで、 for /L %f in (1,1,254) do ping -n 4 -w 50 192.168.100.%f>>d:\result.txt と実行すると、pingの結果がテキストに記載されました。 よろしくお願いします。

  • system()でWINのバッチファイルを動かす時の問題

    XAMMP(WIN版)で バッチファイルでTEXファイルをpdfにしようと思っています。 フォルダの構成は latex ├latex.php -バッチファイル呼び出し用PHP  ├latex.bat -バッチファイル ├latex.txt -コマンド操作 └latex.tex --------------------- latex.bat platex ex1 < latex.txt dvipdfmx ex1 --------------------- を動かすと問題なく動いて ex1.texをPDF化してくれるんですが 同一ディレクトリに latex.php --------------------- <? $com="latex.bat"; system("$com",$return); ?> ---------------------- を配置して 実行すると動かないです。 因みに $com= ping 127.0.0.1; で試すと動きます また batファイルにping 127.0.0.1 と記述しても動きました batファイルをダブルクリックして 単独で実行すると動きます なんとか, WEB上でLatexを動かしたいです・・・ 検索はかなりかけてみて,わけもわからず CMD /C latex.cmdとかにしてみるとか safe-modeも offになってますし やってみましたが、やはり動作しませんでした あとWINのでうまくいってる設定例が探した限り 見つかりませんでした。 ご存知の方?またアドバイスでも結構ですので ご教授いただければと思います。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • バッチファイルのrdでログを吐きたい

    現在rdコマンドを使い、失敗した場合、成功した場合どのフォルダを削除したか、等のログを吐きたいのですが、ログが吐けません ログの吐き方をご存知の方ご教授いただければと思います フォルダ構成 -log.txt -test -rd.bat rd.batを実行すると、testフォルダが削除され、log.txtに記述されます また、rd.batはtest2を削除しようとしますが、test2というフォルダは存在しないため、エラーをlog.txtに記述します rd.batの内容 @echo off rd test /S /Q >> log.txt rd test2 /S /Q >> log.txt この状態で実行しますと、log.txtは何も書き込まれないままです echoをつけて echo rd test /S /Q >> log.txt にするとrdが実行されません どなたかご存知の方ご教授よろしくお願いいたします