Windows DOSコマンド、バッチファイル(.bat)サンプル、コマンドプロンプト

更新:

Windows DOSコマンド、バッチファイル(.bat)、バッチ処理のサンプル。
対象 : Windows 10/8.1/7/Vista/XP

フォルダ操作・ディレクトリ操作

  • DIR・フォルダ表示
    • dir
  • CD・フォルダ移動
    • sampleフォルダに移動
      cd sample
    • 一つ上のフォルダに移動
      cd ../
    • c:\sample\abcに移動
      cd c:\sample\abc
  • MD・フォルダ作成
    • sampleディレクトリ作成
      md sample
  • カレントディレクトリを表示
    • 単にcdと打つ(Linux/Unixでいうpwd)
      cd
    • カレントディレクトリは変数 %cd% に入っている
      echo %cd%

ファイル操作

  1. COPY・ファイルのコピー
    1. sample.txtを、homepageフォルダにコピー
      copy sample.txt homepage
    2. sample.txtをフロッピーにコピー
      copy sample.txt A:\
  2. MOVE・ファイルの移動
    1. 拡張子が.txtのファイルを、sampleフォルダに移動
      move C:\web\test\*.txt C:\site\sample
    2. sample.txtをフロッピーにコピー
      move sample.txt A:\
  3. DEL・削除
    1. sample.txtを削除
      del sample.txt
    2. sampleフォルダ削除
      del sample

ワイルドカード

  1. 拡張子が.txtのファイルを全てc:\sample\abcにコピー
    copy *.txt c:\sample\abc

ネットワーク

  1. ipconfig・ネットワーク情報
    1. 現在の自分のマシンのIPアドレス表示
      ipconfig
    2. ipconfigのオプション表示
      ipconfig /
    3. IPアドレスを再取得
      ipconfig /renew
    4. 現在の自分のマシンのIPアドレス表示
      ipconfig
    5. WindowsのDNSキャッシュ情報確認
      ipconfig /displaydns
    6. WindowsのDNSキャッシュ情報リセット
      ipconfig /flushdns
  2. nslookup・DNS情報
    1. 自分のコンピュータに設定されたDNSサーバで情報取得
      nslookup www.example.com.
    2. 任意のDNSサーバを指定して情報取得
      nslookup www.example.com. DNSサーバアドレス
  3. ping
    1. サーバの応答確認
      ping www.example.com.
  4. tracert
    1. 通信経路情報
      tracert www.example.com
    2. Linuxなどの場合は tracerouteコマンド。
  5. telnet
    telnetについては Windows TELNET、SMTPコマンド・POPコマンド、POP before SMTP をご覧下さい。

EXEファイルの実行

  1. カレントディレクトリまたはパスが通っている場所にあるsample.exeを実行
    sample
  2. comment.txtをsample.exeで処理
    sample comment.txt

強制終了

  1. 処理を強制的に中断したい場合
    Ctrl + C
    を押す。

コマンド操作

  1. 長いコマンドを入力するのが面倒な場合は、コピー&ペーストを利用すると良い。
    コマンドプロンプトで右クリックすると「貼り付け」という項目がある。
    テキストエディタなどに書かれたコマンドをコピーし、コマンドプロンプト上に貼り付けることができる。
  2. コマンドプロンプト上の文字列をコピーしたい場合は、まず右クリックし「範囲指定」を選択する。
    その後、コピーしたい文字列の先頭をクリックしたあと文字列の末尾までドラッグする(反転表示される)。
    範囲選択後、Enterキーを押すとコピーが実行される。
    コマンドプロンプト上で右クリック後「貼り付け」をすれば、コピーした文字列を貼り付けられる。
    クリップボードにコピーされているので、他のアプリケーション上に貼り付けることもできる。
  3. 過去に入力したコマンドは、「↑(上)」キーで表示できる。

バッチファイル、バッチ処理のサンプル

  1. バッチ処理
    バッチファイルを使うと、複数のDOSコマンドを連続して実行できます。
    例えば、sample.batというファイルを作り、そのファイルに
    copy *.html c:\www
    と書き、sample.batをダブルクリックして実行します。
    その結果、カレントディレクトリにある拡張子がhtmlの全てのファイルがc:\wwwにコピーされます。
  2. ファイル連結のサンプル(renketsu.bat)
    @echo off
    echo --------------------------------------------------------
    echo  1. renketsu.batと連結するファイルを同一フォルダに置く。
    echo  2. 1.txt内に各ファイルを連結する。
    echo     ログファイルとかの連結に使う。
    echo  3. 1.txtの1行目はいらないので削除する
    echo --------------------------------------------------------
    echo ----- ファイルを連結して、1.txtにまとめますか? -----
    
    PAUSE
    
    CD > 1.txt
    
    echo ----- ファイル連結開始 -----
    
    FOR %%B IN (*.log *.csv) DO copy /A 1.txt + %%B 1.txt
    
    echo ----- ファイル連結完了 -----
    echo ----- 作業完了しました -----
    
    PAUSE
    
  3. exeファイルの実行(javac.bat)
    ※javacにパスが通っている場合
    @echo off
    echo パスが通っていれば、バッチファイルと同じディレクトリにないexeも実行可能
    echo Javaコンパイラjavacでfile.javaをコンパイルした後、
    echo コンパイルされたjava.classを実行。
    
    javac file.java
    
    java file
    
    PAUSE
    
  4. exeファイルの実行~ファイルの連続処理(testtest.bat)
    *ディレクトリ構成は、以下の通り
    ┣ testtest.bat
    ┣ testtest.exe
    ┣ yasu_oldフォルダ(処理対象のファイルを置く)
    ┗ yasu_newフォルダ(処理後のファイルがコピーされる)
    @echo off
    echo /
    echo / PMD/MMF/PNG/KJXにCRCを付加するバッチファイル
    echo /
    echo --------------------------------------------------------
    echo  1. testtest.bat/testtest.exeは同一フォルダに置く。
    echo  2. 変換したいファイルをyasu_oldフォルダに置く。
    echo  3. test.batをダブルクリック。
    echo  4. yasu_newフォルダが存在すると、その中のファイルを
    echo     削除するか聞いてくる。
    echo     前回変換したファイルを消すために、
    echo     通常は「y」を入力し、削除する。
    echo  5. yasu_newフォルダにファイルがコピーされる。
    echo  6. そのファイルにCRCが付加され、完成。
    echo --------------------------------------------------------
    echo ----- yasu_newフォルダ内ファイルの削除しますか? -----
    
    DEL yasu_new
    
    echo ----- yasu_newフォルダにコピー開始 -----
    
    MD yasu_new
    
    LFNFOR OFF
    
    FOR %%A IN (yasu_old\*.pmd yasu_old\*.mmf yasu_old\*.png yasu_old\*.kjx) DO copy %%A yasu_new
    
    echo ----- newフォルダにコピー終了 -----
    echo ----- CRC付加開始 -----
    
    FOR %%A IN (yasu_new\*.pmd yasu_new\*.mmf yasu_new\*.png yasu_new\*.kjx) DO testtest %%A
    
    echo ----- CRC付加完了 -----
    echo ----- 作業完了しました -----
    
    PAUSE
    
  5. バッチファイルにファイルをドロップして実行(サンプル1)
    処理したいファイルをバッチファイルにドロップして、バッチファイルを実行できます。
    ダブルクリックでも実行できるように、制御文を書きます。
    ダブルクリックの場合、perl txt2html.pl fn=を実行。
    ファイルドロップの場合、perl txt2html.pl fn=%1を実行し、ドロップしたファイルだけ処理させます。
    Perlのプログラムにドロップしたファイル名を渡して実行します。
    @ECHO OFF
    
    IF EXIST %1 GOTO FILEDROP
    ECHO perl txt2html.pl を実行中。
    perl txt2html.pl fn=
    GOTO EXIT
    
    :FILEDROP
    ECHO ファイルがドロップされました。
    CD C:\sitebuild\biglobe\memo\bat
    perl txt2html.pl fn=%1
    GOTO EXIT
    
    :EXIT
    
    PAUSE
    
  6. バッチファイルにファイルをドロップして実行(サンプル2)
    ダブルクリックの場合、全てのJavaファイルをコンパイル。
    ファイルドロップの場合、ドロップしたJavaファイルだけコンパイル。
    @ECHO OFF
    
    IF EXIST %1 GOTO FILEDROP
    ECHO perl build.pl を実行中。
    perl build.pl fn=*.java
    GOTO EXIT
    
    :FILEDROP
    ECHO ファイルがドロップされました。
    javac -classpath C:\test\WEB-INF\src;C:\test\servlet\servlet.jar;C:\test\servlet\mail.jar;C:\test\servlet\activation.jar %1
    
    GOTO EXIT
    
    :EXIT
    
    PAUSE
    

このエントリーをはてなブックマークに追加