実現したいこと
ファイルの中身とディレクトリ名を置換したいです。
ファイルの中身は、下記ので対応しています。ディレクトリ名を変える方法が思いつきません。
bash
1find . -name '*.txt' | xargs sed -i "" 's/__target__/new/g'
条件
下記のような条件です。
- macで実行可能である事
- 大文字小文字なども判別つく
- ライブラリ依存が無いと嬉しい
ディレクトリ構成は一例ですので、ハードコーディングで置換はできないです。
zshで実行可能であれば、ワンライナーでなくても大丈夫です。
期待の結果
before
bash
1❯ tree 2. 3├── __target__1 4│ ├── __target__A 5│ │ ├── apple__Target__ 6│ │ │ └── __target__Foo.txt 7│ │ └── orange__Target__ 8│ └── __target__B 9│ └── __target__Bar.txt 10└── __target__2
bash
1cat __target__1/__target__B/__target__Bar.txt 2__target__ タイトル 3 4Barです。
bash
1cat __target__1/__target__A/apple__Target__/__target__Foo.txt 2__target__ タイトル 3 4Fooです。
after
bash
1❯ tree 2. 3├── new1 4│ ├── newA 5│ │ ├── appleNew 6│ │ │ └── newFoo.txt 7│ │ └── orangeNew 8│ └── newB 9│ └── newBar.txt 10└── new2
bash
1cat new1/newB/newBar.txt 2new タイトル 3 4Barです。
bash
1cat new1/newA/appleNew/newFoo.txt 2new タイトル 3 4Fooです。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/11/02 03:19
2023/11/02 03:24
2023/11/02 03:29