2011-07-27 11 views

Respuesta

6

perl -p -e 's/^/"/' myfile debe hacerlo

$ 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 
!
+1

O' perl -pe' $ _ = qq {"$ _} 'myfile' – Quentin

+0

Gracias, el/^/indica el comienzo de una línea ? – Adrian

+0

@Adrian: sí, '^' es el comienzo de la línea, y '$' luego final. – Aif

1

yo consideraría una de estas formas: archivo

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

Editar en su lugar, guarda una copia de seguridad en "inputfile.txt.bak"

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

Use la redirección de shell para imprimir la salida en un nuevo archivo.

+0

Muchas gracias también – Adrian

+0

Usted es bienvenido. – TLP

2

Otro par de sugerencias:

sólo en el shell:

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 
Cuestiones relacionadas