Birisi bunu başarmak için zarif bir yol önerebilir mi?
Giriş:
test instant ()
test instant ()
...
test instant () //total 1000 lines
çıktı:
test instant1 ()
test instant2 ()
test instant1000()
Boş satırlar girdi dosyalarımda ve aynı dizinde aynı anda işlemem gereken birçok dosya var.
Ben aynı dir birçok dosyaları değiştirmek için çalıştı ve işe yaramadı.
for file in ./*; do perl -i -000pe 's/instance$& . ++$n/ge' "$file"; done
hatalar:
Substitution replacement not terminated at -e line 1.
Substitution replacement not terminated at -e line 1.
ve ben de denedim:
perl -i -pe 's/instant/$& . ++$n/ge' *.vs
İşe yaradı, ancak dizin birinden diğerine artmaya devam etti. Yeni bir dosyaya geçtikten sonra bunu 1'e sıfırlamak istiyorum. İyi bir öneriniz var mı?
find . -type f -exec perl -pi -e 's/instant/$& . ++$n{$ARGV}/ge' {} +
çalışır ancak değiştirilen tüm diğer dosyalar değiştirilmemelidir. Dosyaları sadece ile değiştirmeyi tercih ediyorum *.txt
.
test instant ()
mı oluşuyor ?