.ts
次のテキストで終わるすべてのファイルを再帰的に追加したいので、少なくともexport {};
フォルダを除外する必要がありますnode_modules
。
私は試した:
find . f ! -path '*/node_modules/*' -iname "*.ts" -exec sed -e '1 i\export {}' \;
結果:ファイルごとに次のようになります。sed: 1: "1 i\export ./src/query/ ...": extra characters after \ at the end of i command
アップデート:gnu-sed
macOSにインストールして試してみましたgsed
。しかし、うまくいかないようです。無限に走っているようです。
ベストアンサー1
なぜなら:
文字列は
'{}'
次に置き換えられます。現在のファイル名 findのいくつかのバージョンと同様に、別の引数だけでなく、コマンド引数に現れるたびに処理されます。\
シェル拡張から保護するために、両方の設定をエスケープまたは引用する必要があるかもしれません。
次の方法を使用します。
find . -type f ! -path '*/node_modules/*' -iname "*.ts" -exec sed -i '1 i\export\{\}' {} \;
-i
, --in-place
-sed
ファイルを所定の位置に編集するオプション