ワイルドカード

ワイルドカード

ワイルドカードとは?

ワイルドカードは、ファイル名やディレクトリ名の一部を表現するために使用される特殊な文字です。Linuxでは、コマンドラインでファイルやディレクトリを操作する際に非常に便利なツールとして広く使用されます。ワイルドカードを使用することで、複数のファイルやディレクトリを一度に指定したり、パターンに一致する項目を効率的に操作することができます。本記事では、Linuxのワイルドカードの概要と基本的な使い方について解説します。

ワイルドカードの基本的な種類と使い方

1. アスタリスク(*)

アスタリスク(*)は、0文字以上の任意の文字列に一致します。最も広く使用されるワイルドカードで、任意の文字列を簡単に指定できます。

例:

  • *.txt:拡張子が .txt のすべてのファイルに一致します。
  • file*file で始まるすべてのファイルやディレクトリに一致します。
$ ls *.txt
ls *.txt

クエスチョンマーク(?)は、任意の1文字に一致します。特定の文字数を持つファイルやディレクトリを指定するのに便利です。

例:

  • file?.txtfile1.txtfile2.txt、などに一致しますが、file10.txt には一致しません。
$ ls file?.txt

3. ブラケット([])

ブラケット([])は、特定の文字セットに一致します。ブラケット内に指定した任意の1文字に一致します。

例:

  • file[1-3].txtfile1.txtfile2.txtfile3.txtに一致します。
  • file[a-c].txtfilea.txtfileb.txtfilec.txtに一致します。
$ ls file[1-3].txt
ls file[1-3].txt

4. 波括弧({})

波括弧({})は、指定した複数の文字列に一致します。コンマで区切って複数のパターンを指定することができます。

例:

  • file{1,2,3}.txtfile1.txtfile2.txtfile3.txtに一致します。
$ ls file{1,2,3}.txt

ワイルドカードを使った実例

1. ファイルの一覧表示

lsコマンドとワイルドカードを組み合わせることで、特定のパターンに一致するファイルを一覧表示できます。

$ ls *.txt

2. ファイルのコピー

cpコマンドとワイルドカードを使用して、特定のパターンに一致する複数のファイルを一度にコピーできます。

$ cp file?.txt /path/to/destination/

3. ファイルの削除

rmコマンドとワイルドカードを使用して、特定のパターンに一致する複数のファイルを一度に削除できます。

$ rm file[1-3].txt

4. ディレクトリ内の検索

grepコマンドとワイルドカードを組み合わせることで、特定のパターンに一致するファイルの中から文字列を検索できます。

$ grep "search_term" *.txt

まとめ

ワイルドカードは、Linuxのコマンドラインでファイルやディレクトリを効率的に操作するための強力なツールです。アスタリスク(*)、クエスチョンマーク(?)、ブラケット([])、波括弧({})の基本的な使い方を理解することで、複数のファイルやディレクトリを簡単に指定し、操作することができます。ワイルドカードを活用することで、日常的なタスクを効率化し、作業をよりスムーズに進めることができるでしょう。