Dado que su patrón contiene /
, tendrá que decirle a sed
que use otro delimitador en la expresión de rango /$to_be/
. Aquí, estoy usando @
como delimitador:
sed -i "\@$to_be@c\ \t\t$with_be" /var/lib/jenkins/users/admin/config.xml
Tenga en cuenta también la barra invertida después del comando c
.
Se puede usar un delimitador alternativo en una expresión de rango si se escapa como se muestra arriba. Se puede utilizar casi cualquier carácter, excepto \
y nueva línea. Debe elegir uno que no ocurra en el valor de $to_be
.
El comandoc
("cambiar" )tiene la forma
range c\
text
GNU sed
perdona porque permite que el texto de reemplazo aparezca en la misma línea que el comando en sí, es decir, permite range c\ text
.
Следующая команда awk
добавит в конце каждой строки столбец с разделителями табуляции -со значением10000
:
awk -F '\t' -v OFS='\t' '{ $(NF+1) = 10000; print }' infile >outfile
Данные считываются из infile
и записываются в outfile
.
Измените \t
на любой разделитель, который вам нужен.
Очевидно, что существует множество других способов сделать то же самое. С sed
, например:
sed 's/$/,10000/' infile >outfile
Здесь используется запятая в качестве разделителя и просто подставляется строка ,10000
в конце каждой строки.