Linux では、通常、ファイルの名前を変更するために mv コマンドを使用します。これは、単一のファイルの名前を変更する場合に非常に便利です。ただし、ファイルのグループの名前を変更したい場合、mv は少し無力です。しかし、それは問題ではありません。今日は、バッチ名前変更を実現できる便利なコマンド、rename コマンドを紹介します。 renameコマンドの使い方を詳しく紹介します。 mv コマンドとは異なり、rename コマンドは単に古いファイル名と新しいファイル名を指定するだけではありません。代わりに、Perl に似た正規表現を使用します。まずは例を見てみましょう。 $ 's/old/new/' を this.old に名前変更 $ これ* これ.new このうち、 s は 上記の例では、コマンド どう対処すればいいのでしょうか?とても簡単です。次の例を見てみましょう。 $ ls *.old report.old スケジュール.old 統計.old this.old $ 's/old/new/' *.old の名前を変更します $ ls *.new report.new スケジュール.new 統計.old this.new 上記の結果から、この簡単なコマンド操作により、現在のディレクトリにある .old で終わるすべてのファイルの名前を .new で終わるファイルに変更できることがわかります。シンプルで効率的です。 名前変更コマンドがこれだけだと考えているなら、コードは壊れています。名前変更コマンドはファイル拡張子の変更に限定されず、ファイル名内の任意の文字列を変更することもできます。たとえば、report.* という名前のファイルを review.* に変更する場合は、次のコマンドを使用できます。 $ 's/report/review/' の名前を変更 * 正規表現で提供されるルールにより、ファイル名や拡張子など、ファイル名の任意の部分が変更される可能性があることに注意してください。 $ 's/123/124/' の名前を変更する * $ 124 * ステータス.124 レポート124.txt 間違いを避けるために、対話的に rename を使用してどのような変更が行われたかを確認する場合は、-v オプションを使用できます。 $ 名前変更 -v 's/123/124/' * status.123 が status.124 に名前変更されました report123.txt が report124.txt に名前変更されました -v オプションは、行を変更したときにテキストをプレビューし、別の行を変更したときに再度プレビューしますが、これは非効率的です。全体をプレビューして問題がないことを確認した上で、一気に修正したい場合はどうすればよいでしょうか? -n または --nono オプションを使用すると、名前変更コマンドで上記の要件を満たすことができます。 $ 名前変更 -n 's/old/save/' * 名前を変更します(logger.man-old、logger.man-save) 名前を変更(lyrics.txt-old、lyrics.txt-save) 名前変更(古いファイル、保存ファイル) 名前変更(古いファイル、保存ファイル) 名前を変更(review.old、review.save) 名前を変更する(schedule.old、schedule.save) 名前を変更する(stats.old、stats.save) 名前を変更する(this.old, this.save) 上記の変更に問題がない場合は、-n オプションを削除してファイル名を正式に変更できます。 名前変更の正規表現の . は通常のピリオドではなく、任意の文字に一致するワイルドカードであることに注意してください。これを理解するには、次のコマンドを参照してください。 $ 名前を変更 -n 's/.old/.save/' * 名前を変更します(logger.man-old、logger.man.save) 名前を変更(lyrics.txt-old、lyrics.txt.save) 名前を変更(review.old、review.save) 名前を変更する(schedule.old、schedule.save) 名前を変更する(stats.old、stats.save) 名前を変更する(this.old, this.save) 上記の例では、.old が .save に変更されるだけでなく、-old も .save に変更されます。 . でピリオドを表す場合は、\ エスケープ記号を追加する必要があります。つまり、英語のピリオドを表すには \. を使用します。 $ 名前を変更 -n 's/\.old/\.save/' * 名前を変更(review.old、review.save) 名前を変更する(schedule.old、schedule.save) 名前を変更する(stats.old、stats.save) 名前を変更する(this.old, this.save) すべての大文字を小文字に変更するには、次のコマンドを使用します。 $ 名前変更 -n 'y/AZ/az/' W* 名前を変更(WARNING_SIGN.pdf、warning_sign.pdf) 名前を変更(Will_Gardner_buttons.pdf、will_gardner_buttons.pdf) 名前を変更(Wingding_Invites.pdf、wingding_invites.pdf) 名前を変更(WOW-buttons.pdf、wow-buttons.pdf) 変更内容をプレビューするには -n を使用し、大文字と小文字を変更するには y を使用します。 上記の例では、大文字の W で始まるすべてのファイル名を小文字に変更しました。 要約する 単一のファイルの名前を変更する場合は、mv コマンドを使用できます。複数のファイルの名前を変更する場合は、rename コマンドを使用する方が便利です。事故を避けるために、rename コマンドを使用するときは、最初に -n オプションを追加して変更内容をプレビューし、正しいことを確認してから名前を変更するのが最善です。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Vueは単一ファイルコンポーネントの完全なプロセス記録を実装します
>>: 単語のグループ化シーケンスと複数フィールドのグループ化のための MySQL グループ方法
1. MySQLが正常に起動しない場合は、エラーログ/var/log/mysql/error.log...
スタイルシートの最も重要な機能の 1 つは、ページ、画面、電子シンセサイザーなどの複数のメディアに適...
1. 基本的な文法コードをコピーコードは次のとおりです。埋め込み src=url注: 埋め込みはさま...
1. インデックスの原則インデックスは、列内の特定の値を持つ行をすばやく見つけるために使用されます。...
配列メソッドJavaScript には多くの配列メソッドが用意されています。次の図は、ほとんどの配列...
1. 環境の説明(1) CentOS-7-x86_64、カーネルバージョン uname -r は、 ...
目次1. 穴に落ちる2. 無駄な努力3. 若さの衝動4. 希望の光5. 問題KO 6. 追記1. 穴...
1. インストール手順 Linux 環境でのローカル インストールと比較すると、Docker のイン...
Linux の scp コマンド (Windows では scp は使用できません) と、mysql...
序文最近は、PC、iPad、携帯電話、スマートウォッチ、スマートテレビなど、さまざまなデバイスが存在...
目次1. Commonjsのエクスポートとrequireの使用1.1 CommonJS エクスポート...
前回の記事では、Dockerの基礎知識であるローカルディレクトリのマウント方法を紹介しました。今日は...
この記事では、参考までにMySQL 8.0.13のインストールグラフィックチュートリアルを紹介します...
1. 公式サイトを参照してdockerをインストールする2. MySQLイメージをプルします(デフォ...
1. 改行なしを実現するには<nobr>タグを使用するコードをコピーコードは次のとおりで...