Добавьте строку префиксов к началу каждой строки

У меня есть файл как указано ниже:

line1
line2
line3

И я хочу добраться:

prefixline1
prefixline2
prefixline3

Я мог записать сценарий Ruby, но лучше, если я не должен.

prefix будет содержать /. Это - путь, /opt/workdir/ например.

309
задан Benjamin W. 28 June 2018 в 04:33
поделиться

3 ответа

# If you want to edit the file in-place
sed -i -e 's/^/prefix/' file

# If you want to create a new file
sed -e 's/^/prefix/' file > file.new

Если Prefix содержит / , вы можете использовать любой другой характер не в префиксе , или Побегайте / , поэтому команда SED

's#^#/opt/workdir#'
# or
's/^/\/opt\/workdir/'
486
ответ дан 23 November 2019 в 01:14
поделиться
awk '$0="prefix"$0' file > new_file

с Perl (на месте замены):

perl -pi 's/^/prefix/' file
119
ответ дан 23 November 2019 в 01:14
поделиться

Использование оболочки:

#!/bin/bash
prefix="something"
file="file"
while read -r line
do
 echo "${prefix}$line"
done <$file > newfile
mv newfile $file
5
ответ дан 23 November 2019 в 01:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: