non posso entrare in modifica sul posto Perl one-liners che girano sotto ActivePerl a lavorare a meno che non li specificare con un'estensione di backup:Perché è necessario specificare l'opzione -i con un'estensione di backup quando si utilizza ActivePerl?
C:\> perl -i -ape "splice (@F, 2, 0, q(inserted text)); $_ = qq(@F\n);" file1.txt
Can't do inplace edit without backup.
Lo stesso comando con -i.bak
o -i.orig
funziona a meraviglia, ma crea un file di backup indesiderati nel processo.
C'è un modo per aggirare questo?
Quindi è un limite di Windows. Speravo che non avrei dovuto 'disconnettere' il backup con un comando separato ... sembra che dovrò. Grazie per l'aiuto. – Zaid
Non interamente correlato, ma la modifica sul posto su sed in windows sembra funzionare per me. Posso vedere che il tuo esempio non funzionerebbe in sed, ma potrebbe essere utile sapere. – Mike
@Mike: Da parte mia, la modifica sul posto di 'sed' lascia file temporanei come ad es. 'sedGihEwg' nel file system - il tuo no? Quale versione hai? Sto usando la versione 4.2.1 di GNU sed. – zb226