Linuxでユーザーが行う最も基本的なことの1つは、ファイルの名前変更です 。 Linuxではファイルマネージャーを使用してファイルの名前を変更できますが、それほど面白くありません。この記事では、ターミナルを介してLinuxでファイルの名前を変更したり、複数のファイルの名前を変更したりする方法を学習します。
Linuxでファイルの名前を変更するかファイルを移動する
ディレクトリに「file」というファイルがあり、コマンド「mv」を使用してその名前を「archivo」に変更します。
「mv」コマンドを使用してファイルを移動しますが、別の名前を使用してファイルを同じ場所に移動できます。
$ mv file new_name
また、ファイルを別の場所と別の名前に移動することもできます。
また、同じ構文を使用してディレクトリの名前を変更できます。
「v」オプションを使用すると、詳細な出力を取得できます。
既存のファイルの名前を使用してファイルの名前を変更する場合、「mv」コマンドは既存のファイルを上書きしますが、不要な場合は、「i」オプションを渡すだけで、ファイルを上書きする前にプロンプトが表示されます。
「i」オプションを使用したくない場合は、既存のファイルのバックアップを作成する必要があります。
バックアップはfile1〜と呼ばれます
次の構文を入力するだけで、バックアップ名にサフィックスを追加できます。
$ mv -b -S “suffix” file_name existing_file_name
–backup | 既存の各宛先ファイルのバックアップを作成します |
-f –force | 上書きする前にプロンプトを表示しない |
-i –インタラクティブ | 上書きする前にプロンプトを表示 |
-n | 既存のファイルを上書きしないでください |
-u | SOURCEファイルが宛先ファイルよりも新しい場合、または宛先ファイルが欠落している場合にのみ移動します |
–バックアップオプション
なし、オフ | バックアップを作成しないでください(–backupが指定されている場合でも) |
番号付き、t | 番号付きのバックアップを作成する |
既存、なし | 番号付きバックアップが存在する場合は番号付き、それ以外の場合は単純 |
シンプル、決して | 常に簡単なバックアップを作成します |
「mv」の詳細については、ターミナルで「$manmv」と入力してください。
「rename」を使用して、Linuxで複数のファイルの名前を変更します
あらすじ 名前の変更[-h|-m | -V] [-v] [-n] [-f] [-e | -E perlexpr] * |perlexpr[ファイル]
このコマンドは、正規表現の知識または少なくとも基本的な知識が必要なため、mvよりも少し高度です。「rename」は、最初の引数として指定されたルールに従って提供されたファイル名(複数のファイル)の名前を変更します。
perlexpr引数は、指定されたファイル名の少なくとも一部についてPerlの$_文字列を変更することが期待されるPerl式です。指定されたファイル名が式によって変更されていない場合、名前は変更されません。コマンドラインでファイル名が指定されていない場合、ファイル名は標準入力を介して読み取られます。
オプション
-v -verbose | 詳細:ファイルの名前を正常に変更しました。 |
-n -nono | アクションなし:名前を変更するファイルの名前を出力しますが、名前を変更しないでください。 |
-f -force | 上書き:既存のファイルを上書きできるようにします。 |
-h -help | ヘルプ:概要とオプションを印刷します。 |
-V -version | バージョン:バージョン番号を表示します。 |
-e | 式:ファイル名に基づいて動作するコード。 コードを作成するために繰り返すことができます(「perl-e」など)。 -eがない場合、最初の引数がコードとして使用されます。 |
-E | ステートメント:ファイル名を-eとして処理するコードですが、「;」で終了します。 |
例:
file1.cとfile2.cの2つのファイルがあり、file1の拡張子を.txtに変更したいので、次のコマンドを使用します。
$ rename 's/\.c/\.txt/' file1.c
file3.cという名前の新しいファイルを作成しましたが、ファイル2と3の拡張子を変更したいので、次のコマンドを使用します。
$ rename 's/\.c/\.txt/' *
現在、4つのファイルがあります: awesomefile、greatfile、bigfile、linuxfile; 名前の特定の部分を変更したい、つまり「ファイル」を「ドキュメント」に変更したい場合、最終的な結果は次のようになります。
素晴らしい ドキュメント 、すばらしい ドキュメント 、大きい ドキュメント およびLinux ドキュメント
したがって、次のコマンドを使用します。
$ rename 's/file/document/' *
また、小文字を大文字に変換したいので、次のコマンドを使用します。
$ rename 'y/a-z/A-Z/' *
「mv」の詳細については、次のように入力してください。ターミナルで$manrenameを入力します。
Linuxでディレクトリの名前を変更する
Linuxでファイルの名前を変更するのと同様に、Linuxでディレクトリの名前を変更できます。 mvコマンドを使用して、ディレクトリのパスとしてソースを指定し、宛先のパスとして新しいディレクトリ名を指定します。
紛らわしいですか?チェックしてください–
DirectoryA ホームディレクトリ内にあります。 Linuxでこのディレクトリの名前を変更する方法は次のとおりです–
mv $HOME/DirectoryA $HOME/NewDirectoryName
目的のディレクトリが現在のディレクトリにない場合は、ディレクトリのフルパスを指定する必要があります。
Linuxのmvコマンドはいつファイルを移動して名前を変更しますか?
1つのコマンドがファイルの移動とファイルの名前変更の2つの機能を実行する場合、ファイルを移動するのはいつか、ファイルの名前を変更するのはいつか疑問に思うかもしれません。答えは簡単です。ソースパスと宛先パスが同じ場合は、ファイルまたはディレクトリの名前が変更されます。それ以外の場合は、ファイルまたはディレクトリを移動または移動して名前を変更します。
ファイルを移動するためのLinuxmvコマンド
前述のように、ソースと宛先が同じでない限り、ソースファイルまたはディレクトリは宛先ディレクトリに移動されます。次のコマンドはファイルを移動します–
mv $HOME/DirectoryA/test.txt $HOME/Test/test.txt
次のmvコマンドは、ファイルを移動して名前を変更します–
mv $HOME/DirectoryA/test.txt $HOME/Test/test2.txt
Bashスクリプトでのmvコマンドの使用
bashスクリプトを作成するときは、ユーザーが任意のディレクトリからスクリプトを実行できることに注意してください。 bashスクリプトでmvコマンドを使用するときは、ソースディレクトリと宛先ディレクトリへのフルパスを指定することを忘れないでください。ディレクトリまたはファイルの名前のみを入力した場合、ユーザーがそのディレクトリからスクリプトを実行すると仮定すると、ユーザーが別の場所からスクリプトを実行すると、スクリプトが失敗する可能性があります。
Linuxでファイルの名前を変更できます dolphinやNautilusなどのファイルマネージャーを使用しますが、ターミナルを使用してLinuxでファイルの名前を変更する方が楽しいと思います。また、「rename」コマンドはファイルマネージャーよりも強力だと思います。あなたはあなた自身の方法を選ぶことができます、しかし私はいつもターミナルを好みます。