Girdim, okunabilirlik için bir sekme ve boşluk içeriyor. perl -a
kullanarak bir alanı değiştirmek istiyorum, sonra satırı özgün formunda yazdırmak istiyorum. (. Veri bana çift dosyaları ve onlar israf alanı sayısını gösteren findup
dan) Girdi geçerli:"Perl -a" bir şekilde orijinal boşluk kullanılarak @F'yi yeniden birleştirebilir mi?
2 * 4096 backup/photos/photo.jpg photos/photo.jpg
2 * 111276032 backup/books/book.pdf book.pdf
çıktı böyle kilobayt alanını 3 dönüştürmek olacaktır:
2 * 4 KB backup/photos/photo.jpg photos/photo.jpg
2 * 108668 KB backup/books/book.pdf book.pdf
gerçek ise
perl -lanE '$F[2]=int($F[2]/1024)." KB"; print;'
: sadece otomatik @F
yeniden şekillendirmek üzere perl ve orijinal boşluk koruyacaktır olabilir çünkü benim rüya dünyasında, bu, benim kod olurdu hayat, tek bir boşluk ile birleştirme benim tek seçenek gibi görünüyor: sınırlayıcıları hatırlar herhangi bir otomatik değişken
perl -lanE '$F[2]=int($F[2]/1024)." KB"; print join(" ", @F);'
var mı? Böyle bir sihir dizim olsaydı, bu kod şöyle olurdu:
Btw, elemanlar arasında bir boşluk yazdırmak için: 'print "@F";' – zdim