Dapatkah seseorang menyarankan cara yang elegan untuk mencapai ini?
Memasukkan:
test instant ()
test instant ()
...
test instant () //total 1000 lines
output harus:
test instant1 ()
test instant2 ()
test instant1000()
Baris kosong ada di file input saya dan ada banyak file di bawah direktori yang sama yang harus saya proses sekaligus.
Saya mencoba ini untuk mengganti banyak file dalam direktori yang sama dan tidak berfungsi.
for file in ./*; do perl -i -000pe 's/instance$& . ++$n/ge' "$file"; done
kesalahan:
Substitution replacement not terminated at -e line 1.
Substitution replacement not terminated at -e line 1.
dan saya juga mencoba ini:
perl -i -pe 's/instant/$& . ++$n/ge' *.vs
Ini berhasil tetapi indeks terus bertambah dari satu ke file lain. Saya ingin mengatur ulang ke 1 setelah perubahan ke file baru. Ada saran bagus?
find . -type f -exec perl -pi -e 's/instant/$& . ++$n{$ARGV}/ge' {} +
berfungsi tetapi diganti semua file lain tidak boleh diganti. Saya lebih suka hanya mengganti file dengan *.txt
saja.
test instant ()
?