Perl: добавить символ в начало строки - PullRequest
5 голосов
/ 27 июля 2011

Я хочу добавить символ "в начале каждой строки в текстовом файле. Есть ли простое решение?

Ответы [ 3 ]

6 голосов
/ 27 июля 2011

perl -p -e 's/^/"/' myfile должен это сделать!

$ cat myfile 
0
1
2
3
4
5
6
7
8
9
10
$ perl -p -e 's/^/"/' myfile
"0
"1
"2
"3
"4
"5
"6
"7
"8
"9
"10
2 голосов
/ 27 июля 2011

Еще пара предложений:

просто в оболочке:

tmp=$(mktemp)
while read -r line; do printf '"%s\n' "$line"; done < filename > "$tmp" &&
mv "$tmp" filename

ed:

ed describes.sql.bak <<'END'
1,$s/^/"/
w
q
END
1 голос
/ 27 июля 2011

Я бы рассмотрел один из следующих способов:

perl -pi.bak -e 's/^/"/' inputfile.txt

Редактировать файл на месте, сохраняет резервную копию в «inputfile.txt.bak».

perl -pe 's/^/"/' inputfile.txt > outputfile.txt

Используйте перенаправление оболочки для печати вывода в новый файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...