単一のコマンドまたは行を使用してファイルリストから抽出されたファイルの名前を変更する方法

単一のコマンドまたは行を使用してファイルリストから抽出されたファイルの名前を変更する方法

my-project次のファイルツリーに名前が付けられたプロジェクトがあります。

私のプロジェクト/(以前)
.
├── src
│   ├── index.html
│   ├── main.js
│   ├── normalize.js
│   ├── routes
│   │   ├── index.js
│   │   └── Home
│   │       ├── index.js
│   │       └── assets
│   ├── static
│   ├── store
│   │   ├── createStore.js
│   │   └── reducers.js
│   └── styles
└── project.config.js

今私は欲しい次のファイルの名前を変更します。-origファイルタイプ拡張子の前に文字列を追加します。

名前を変更するファイル.txt
src/main.js
src/routes/index.js
src/store/reducers.js
project.config.js

(ファイルの内容をまったく変更したくありません。)

最終ファイルツリーは次のとおりです。

私のプロジェクト/(以降)
.
├── src
│   ├── index.html
│   ├── main-orig.js
│   ├── normalize.js
│   ├── routes
│   │   ├── index-orig.js
│   │   └── Home
│   │       ├── index.js
│   │       └── assets
│   ├── static
│   ├── store
│   │   ├── createStore.js
│   │   └── reducers-orig.js
│   └── styles
└── project.config-orig.js

1行またはコマンドでこれを行う方法はありますか?

ベストアンサー1

存在するbash

while read ; do mv "$REPLY" "${REPLY%.js}-orig.js" ; done < files-to-rename.txt

おすすめ記事