ファイルの名前を変更することは、Linuxシステムで実行する必要のある最も基本的なタスクの1つです。 GUIファイルマネージャーまたはコマンドラインターミナルを使用してファイルの名前を変更できます。
1つのファイルの名前を変更するのは簡単ですが、特にLinuxを初めて使用するユーザーにとっては、一度に複数のファイルの名前を変更するのは難しい場合があります。 。
このチュートリアルでは、mvコマンドとrenameコマンドを使用してファイルの名前を変更する方法とディレクトリ。
mvコマンドを使用したファイルの名前変更#
mvコマンド(moveの略)は、ファイルの名前変更またはファイルの移動に使用されます。ある場所から別の場所へ。 mvコマンドの構文は次のとおりです。
sourceは1つ以上のファイルまたはディレクトリにすることができ、destinationは単一のファイルまたはディレクトリにすることができます。
- 複数のファイルを
sourceとして指定する場合、destinationはディレクトリである必要があります。この場合、sourceファイルはターゲットディレクトリに移動されます。 - 単一のファイルを
source、およびdestinationターゲットが既存のディレクトリである場合、ファイルは指定されたディレクトリに移動されます。 - ファイルの名前を変更するには、単一のファイルを指定する必要があります。
sourceとしてファイルを作成し、destinationターゲットとして1つのファイルを作成します。
たとえば、ファイルの名前をfile1.txtにfile2.txtに変更します。
mvコマンドで複数のファイルの名前を変更する#
mvコマンドで名前を変更できるのは、一度に1つのファイルのみですが、次のような他のコマンドと組み合わせて使用できます。 findまたはbash forまたはwhileループ内で、複数のファイルの名前を変更します。
次の例は、Bashforループを使用してすべての名前を変更する方法を示していますivid = ” .html拡張子を.phpに変更することにより、現在のディレクトリ内のa8fbe267f9 “>
ファイル。
コードを1行ずつ分析してみましょう:
- 最初の行で
forは、.htmlでエッジングされているすべてのファイルのリストをループして繰り返します。 - 2行目はリストの各項目に適用され、ファイルを
.htmlを.phpに置き換えた新しいファイル。パーツ${file%.html}は、シェルパラメータ展開を使用して、ファイル名から.htmlパーツを削除しています。 -
doneはループセグメントの終了を示します。
これは、mvを
上記と同じことを実現するには:
findコマンドは、現在のディレクトリ内の.htmlで終わるすべてのファイルをmvに
オプション。文字列{}は、現在処理されているファイルの名前です。
上記の例からわかるように、コマンドは、Bashスクリプトに関する十分な知識が必要なため、簡単な作業ではありません。
名前の変更コマンド#
renameコマンドは、複数のファイルの名前を変更するために使用されます。このコマンドは、正規表現の基本的な知識が必要なため、mvよりも高度です。
renameコマンド。このチュートリアルでは、Perlバージョンのrenameコマンドを使用します。このバージョンがシステムにインストールされていない場合は、ディストリビューションのパッケージマネージャーを使用して簡単にインストールできます。
-
インストール
rename -
CentOSとFedoraに
renameをインストール -
ArchLinuxに
renameをインストールします
renameコマンドの構文は次のとおりです。
renameコマンドは、指定されたivに従ってfilesの名前を変更しますid = “c50e40253f”>
通常の式。 perl正規表現の詳細については、こちらをご覧ください。
次の例では、拡張子が.htmlのすべてのファイルを.phpに変更します。
-nオプションを使用すると、名前を変更せずに、名前を変更するファイルの名前を出力できます。
出力は次のようになります。
デフォルトでは、renameコマンドは既存のファイルを上書きしません。 -fオプションを渡して、既存のファイルを上書きできるようにします。
以下はさらに一般的なものです。 renameコマンドの使用例:
結論#
およびrenameコマンドでファイルの名前を変更します。
Linuxでファイルの名前を変更する他のコマンド(。コマンドラインに不安を感じる新しいLinuxユーザーは、MétamorphoseなどのGUIバッチ名前変更ツールを使用できます。