.ts
いくつかのファイルを含むReactアプリケーションがあります.tsx
現在の.tsファイルと.tsxファイルの内容を更新するには、2つの個別のコマンドを実行する必要があります。
internal-web main % cd src
src main % find . -name '*.tsx' -print0 | xargs -0 sed -i "" "s/SomeThing/SOME_THING/g"
src main % find . -name '*.ts' -print0 | xargs -0 sed -i "" "s/SomeThing/SOME_THING/g"
.tsファイルと.tsxファイルを同時に更新できるように、このコマンドを1つのコマンドにまとめる方法はありますか?
ベストアンサー1
あなたはできます:
find . \( -name '*.tsx' -o -name '*.ts' \) -print0 |
xargs -0 sed -i "" "s/SomeThing/SOME_THING/g"
sed
または、はるかに簡単で移植性に優れています(ファイルが見つからないときに発生するエラーを防ぐ)。
find . \( -name '*.tsx' -o -name '*.ts' \) -exec sed -i "" "s/SomeThing/SOME_THING/g" {} +
とにかく、これは-i
標準オプションではないことに注意してくださいsed
。sed -i ""
FreeBSD実装を使用することをお勧めしますsed
(macOSでも利用可能)。他のほとんどのsed
実装はaをサポートしないか、aを省略する-i
必要があります""
。