コマンドプロンプトでファイル一覧をテキスト出力!結果の便利な活用法も

    • このページをはてなブックマークに追加

    公開日:2016年10月31日 最終更新日:2021年10月01日

    CUI(キャラクターユーザインターフェース)を採用したコマンドプロンプトには、テキストベースで全ての操作を行うCUIならではの便利な使い方がたくさんあります。今回は「コマンドプロンプトを使用してファイル操作を効率化する方法」の例として、ファイル一覧の取得方法から、その結果を使ったファイル名の一括変更方法をご紹介致します。

    コマンドプロンプトの基本の使い方を知りたい方は、こちらの記事をご覧ください。
    関連記事: 初心者のためのWindowsコマンドプロンプト使い方入門

    コマンドプロンプトの主要なコマンド一覧を知りたい方は、こちらの記事をご覧ください。
    関連記事: 基本コマンドプロンプト25選!逆引きコマンド一覧

    目次

    1.ファイル一覧を表示する

    1.1 フォルダの中身を表示するコマンド「dir」

    まず必要なファイルを1つの作業ディレクトリ(フォルダ)に集めて、フォルダの中身の一覧表を表示します。

    一覧表を表示するコマンドは、「dir」です。

    dir [ファイル名] [オプション] [ディレクトリ名]

    ■[ファイル名]には

    表示対象としたいファイルの名称を記載します。ここにはワイルドカードが使用可能ですので、「ファイル名が●●から始まるもの」や「拡張子がテキストのもの」のみを抜粋して表示させたい場合にも使用できます。

    表示対象としたいファイルが指定したディレクトリの中全部という場合は、省略可能です。

    ■[オプション]には

    オプションを指定すると、指定した属性に該当するファイルだけを表示したり、ソート順や表示方法(縦並びと横並びなど)を変更して表示することができます。

    指定できるオプション一覧は次項にてご紹介します。

    ■[ディレクトリ名]には

    表示対象としたいディレクトリ名を記載します。こちらにはワイルドカードは使用できません。

    表示対象としたいディレクトリが現在の作業ディレクトリ(カレントディレクトリ)である場合は、省略可能です。

    ▲目次へ戻る

    1.2 「dir」の主要なオプション

    dirのオプションには、次のようなものがあります。

    ■表示対象の属性を指定するオプション

    /A:a アーカイブのみ表示
    /A:d ディレクトリ(フォルダ)のみ表示
    /A:h 隠しファイルのみ表示
    /A:r 読み取り専用ファイルのみ表示
    /A:s システムファイルのみ表示
    /A-a アーカイブ以外を表示
    /A-d ディレクトリ以外を表示
    /A-h 隠しファイル以外を表示
    /A-r 読み取り専用ファイル以外を表示
    /A-s システムファイル以外を表示

    ■表示のソート順を指定するオプション

    /O:d 作成日時の古い順に表示
    /O:e 拡張子のアルファベット昇順に表示
    /O:g ディレクトリを先に表示
    /O:n 名前のアルファベット昇順に表示
    /O:s ファイルサイズが小さい順に表示
    /O-d 作成日時の新しい順に表示
    /O-e 拡張子のアルファベット降順に表示
    /O-g ディレクトリを後に表示
    /O-n 名前のアルファベット降順に表示
    /O-s ファイルサイズが大きい順に表示

    ■その他のオプション

    /B ディレクトリとファイルのみ表示
    /C ファイルサイズを3桁ごとにカンマで区切って表示
    /-C ファイルサイズをカンマで区切らずに表示
    /D ファイル名のみで詰めて表示(縦並び)
    /L 結果をすべて小文字で表示
    /P 結果が長い場合1ページずつ表示
    (任意のキーで次ページへ進む)
    /Q ファイルの所有者情報を表示
    /S サブディレクトリも含め全てのファイルを表示
    /W ファイル名のみで詰めて表示(横並び)

    その他詳しくは「dir /?」とコマンドラインに打ち込んで実行すると、ヘルプ画面を表示することができます。

    ▲目次へ戻る

    2.結果をテキストファイルに出力する

    2.1 処理結果をテキストファイルに出力する2つの方法

    処理結果をテキストで保存するには、次のように2通りの方法があります。

    ・画面に表示された結果をコピペする方法
    ・結果をテキストファイルに出力する方法

    ■画面に表示された結果をコピペする方法

    Windows10以降であれば、コマンドプロンプト上でも普通にマウス操作でテキスト選択&ショートカットキーを用いてコピー&ペーストが可能です。

    それより前のバージョンであれば上部のバーを右クリックし「編集」を選択すると、全選択やコピー&ペーストが可能です。

    column_image5043_01
    column_image5043_02

    ■結果をテキストファイルに出力する方法

    コピペを用いた方法では、結果の行数が多い場合に操作がし難く面倒です。その場合「コマンドの実行結果を直接指定したテキストファイルに出力する」という方法があります。

    [結果を出力したいコマンド] > [ファイル名]

    結果を出力したいコマンドの後に半角スペースを空けて「>」と打ち、さらに半角空けて出力結果のファイル名を指定します。すると、カレントディレクトリに出力結果のファイルが生成されます。

    column_image5043_04

    ▲目次へ戻る

    2.2 txt以外の拡張子も指定可能

    コマンドプロンプトからの出力は、中身がテキストデータであれば拡張子は何でも指定できます。そのままダブルクリックで使用できる「.txt」以外に代表的なものには、ログファイルであることを示す「.log」などがあります。

    その他代表的なテキストファイルとしては、「.html」や「.c」「.java」といったプログラムのソースファイルがあります。

    ▲目次へ戻る

    3.ファイル操作を一括で行う

    コマンドプロンプトはたくさんの命令を一括で実行可能であるという特徴があります。今回はファイル一覧出力と命令一括実行の活用例として、「ファイル名の一括変更」をご紹介します。

    3.1 ファイル一覧を取得する

    操作対象としたいファイル名の一覧を出力します。今回は「Hogehoge01」フォルダ内にあり、ファイル名が「hoge~」で始まるテキストファイルを対象とします。

    column_image5043_05

    これらのファイルのみを出力対象とするには、次のように指定します。

    「dir hoge*.txt /B」

    ファイル名のみを出力するオプションを付けておくと、後で余分な情報を削除する手間が省けて便利です。

    column_image5043_06

    「dir hoge*.txt /B > kekka.txt」

    これを実行すると、カレントディレクトリに「kekka.txt」が作成されました。

    column_image5043_07
    column_image5043_08

    ▲目次へ戻る

    3.2 一覧を編集してコマンドリストを作る

    矩形選択が可能なテキストエディタ(なければExcelなど)で出力したテキストを開き、操作コマンドや変更先ファイル名を付加してコマンドリストを作成します。

    column_image5043_09

    ▲目次へ戻る

    3.3 コマンドリストを流す(実行する)

    前項にて完成したコマンドリストを全選択して、コピーします。コマンドプロンプトに戻りそのままペーストすると、テキストデータに含まれる改行コードの位置で「Enterキー」を入力したのと同じ処理が行われ、連続で実行されます。

    column_image5043_10

    実行した結果、ファイル名が変わりました。

    column_image5043_11

    なおリスト中にエラーになる行があった場合は、エラーメッセージが出力された後、スルーして次の行の実行に移ります。実行後はログを確認して、エラーが出ている行がないかを確認するようにして下さい。

    ▲目次へ戻る

    4.コマンドプロンプトでファイル操作する場合の注意点

    コマンドプロンプトはコマンドやファイル名の指定を「半角スペース」で区切って行うため、半角スペースが含まれるファイル名はそのままでは扱うことはできません。半角スペースが含まれる場合は「“”」(ダブルクォーテーション)で囲むことで、正常に操作可能になります。

    column_image5043_12

    上図のように変更後ファイル名に半角スペースが含まれている2、3行目のコマンドについては、2行目はエラーとなり、3行目は実行されます。

    column_image5043_13

    ▲目次へ戻る

    5.コマンドプロンプト活用で業務効率化

    コマンドプロンプトは今回ご紹介したようなファイル操作を行えるだけでなく、コマンドで可能なことは全て一括でコマンドを流して実行することができます。いろいろと応用できる場面は多いので、ぜひ活用してみて下さいね。

    ▲目次へ戻る

    月額単価70万円〜80万円
    勤務地 東京都 千代田区
    • このページをはてなブックマークに追加

    おすすめ記事

  • ピックアップ

    フリーランス

    【Java/OracleDB】システムエンジニア★製造業・物流業向けERPパッケージの運用保守 NEW

    月額単価 :70万円〜80万円

    主に製造業や物流業向けのERPパッケージの開発を手掛ける企業にて、当ERPパッケージの追加機能開発や運...

    正社員

    【Linux】インフラエンジニア|各種システムの要件定義・運用保守 NEW

    年収 :300万円〜

    新規サービスの開発支援、及びメンテナンス自社での新規に検討している製品、サービスの開発 顧客サポ...

    株式会社デジタルトランスフォーメーション

    正社員

    【Java】システムエンジニア|新規サービスの開発 NEW

    年収 :300万円〜

    新規サービスの開発、及びメンテナンス自社での新規に検討している製品、サービスの開発 顧客サポート...

    株式会社デジタルトランスフォーメーション

    正社員

    【python】プログラマ|画像処理技術の開発 NEW

    年収 :400万円〜

    Liquid では、生体認証を用い、スマホでかんたんに本人確認できるサービスを展開しています。 ■ 業務...

    株式会社Liquid