Por defecto , las sustituciones toman una cuerda como parte para sustituir. Para ejecutar el código en el proceso de sustitución, debe utilizar el indicador e
.
$numOfChar = 10;
s/^(.*)/' ' x $numOfChar . $1/e;
Esto añadirá $numOfChar
espacio para el inicio de su texto. Para hacerlo para cada línea en el texto o bien utilizar la bandera -p
(para un proceso rápido, una línea):
cat foo.txt | perl -p -e "$n = 10; s/^(.*)/' ' x $n . $1/e/" > bar.txt
o si se trata de una parte de un guión más grandes usan las banderas -g
y -m
(-g
para el mundial , es decir, repetida sustitución y -m
para hacer ^
partido al comienzo de cada línea):
$n = 10;
$text =~ s/^(.*)/' ' x $n . $1/mge;
¿Recibe algún mensaje de error? – tstenner