CUI(キャラクターユーザインターフェース)を採用したコマンドプロンプトには、テキストベースで全ての操作を行うCUIならではの便利な使い方がたくさんあります。今回は「コマンドプロンプトを使用してファイル操作を効率化する方法」の例として、ファイル一覧の取得方法から、その結果を使ったファイル名の一括変更方法をご紹介致します。
コマンドプロンプトの基本の使い方を知りたい方は、こちらの記事をご覧ください。
関連記事:
初心者のためのWindowsコマンドプロンプト使い方入門
コマンドプロンプトの主要なコマンド一覧を知りたい方は、こちらの記事をご覧ください。
関連記事:
基本コマンドプロンプト25選!逆引きコマンド一覧
目次
1.1 フォルダの中身を表示するコマンド「dir」
1.2 「dir」の主要なオプション
2.1 処理結果をテキストファイルに出力する2つの方法
2.2 txt以外の拡張子も指定可能
1.ファイル一覧を表示する
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以降であれば、コマンドプロンプト上でも普通にマウス操作でテキスト選択&ショートカットキーを用いてコピー&ペーストが可能です。
それより前のバージョンであれば上部のバーを右クリックし「編集」を選択すると、全選択やコピー&ペーストが可能です。
■結果をテキストファイルに出力する方法
コピペを用いた方法では、結果の行数が多い場合に操作がし難く面倒です。その場合「コマンドの実行結果を直接指定したテキストファイルに出力する」という方法があります。
[結果を出力したいコマンド] > [ファイル名]
結果を出力したいコマンドの後に半角スペースを空けて「>」と打ち、さらに半角空けて出力結果のファイル名を指定します。すると、カレントディレクトリに出力結果のファイルが生成されます。
2.2 txt以外の拡張子も指定可能
コマンドプロンプトからの出力は、中身がテキストデータであれば拡張子は何でも指定できます。そのままダブルクリックで使用できる「.txt」以外に代表的なものには、ログファイルであることを示す「.log」などがあります。
その他代表的なテキストファイルとしては、「.html」や「.c」「.java」といったプログラムのソースファイルがあります。
3.ファイル操作を一括で行う
コマンドプロンプトはたくさんの命令を一括で実行可能であるという特徴があります。今回はファイル一覧出力と命令一括実行の活用例として、「ファイル名の一括変更」をご紹介します。
3.1 ファイル一覧を取得する
操作対象としたいファイル名の一覧を出力します。今回は「Hogehoge01」フォルダ内にあり、ファイル名が「hoge~」で始まるテキストファイルを対象とします。
これらのファイルのみを出力対象とするには、次のように指定します。
「dir hoge*.txt /B」
ファイル名のみを出力するオプションを付けておくと、後で余分な情報を削除する手間が省けて便利です。
「dir hoge*.txt /B > kekka.txt」
これを実行すると、カレントディレクトリに「kekka.txt」が作成されました。
3.2 一覧を編集してコマンドリストを作る
矩形選択が可能なテキストエディタ(なければExcelなど)で出力したテキストを開き、操作コマンドや変更先ファイル名を付加してコマンドリストを作成します。
3.3 コマンドリストを流す(実行する)
前項にて完成したコマンドリストを全選択して、コピーします。コマンドプロンプトに戻りそのままペーストすると、テキストデータに含まれる改行コードの位置で「Enterキー」を入力したのと同じ処理が行われ、連続で実行されます。
実行した結果、ファイル名が変わりました。
なおリスト中にエラーになる行があった場合は、エラーメッセージが出力された後、スルーして次の行の実行に移ります。実行後はログを確認して、エラーが出ている行がないかを確認するようにして下さい。
4.コマンドプロンプトでファイル操作する場合の注意点
コマンドプロンプトはコマンドやファイル名の指定を「半角スペース」で区切って行うため、半角スペースが含まれるファイル名はそのままでは扱うことはできません。半角スペースが含まれる場合は「“”」(ダブルクォーテーション)で囲むことで、正常に操作可能になります。
上図のように変更後ファイル名に半角スペースが含まれている2、3行目のコマンドについては、2行目はエラーとなり、3行目は実行されます。
5.コマンドプロンプト活用で業務効率化
コマンドプロンプトは今回ご紹介したようなファイル操作を行えるだけでなく、コマンドで可能なことは全て一括でコマンドを流して実行することができます。いろいろと応用できる場面は多いので、ぜひ活用してみて下さいね。
当サイトプロエンジニアのコンサルタントが厳選したおすすめのフリーランス案件特集はこちら
特集ページから案件への応募も可能です!
実際にフリーランスエンジニアとして活躍されている方のインタビューはこちら