Foros del Web » Administración de Sistemas » Unix / Linux »

Otra de scripting shell, ahora con SED

Estas en el tema de Otra de scripting shell, ahora con SED en el foro de Unix / Linux en Foros del Web. Pues resulta que necesito hacer lo siguiente, ofuscar un codigo fuente, por lo tanto me di a la tarea de remover los saltos de linea ...
  #1 (permalink)  
Antiguo 11/10/2005, 11:11
Avatar de c4r1o5  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 1
Otra de scripting shell, ahora con SED

Pues resulta que necesito hacer lo siguiente, ofuscar un codigo fuente, por lo tanto me di a la tarea de remover los saltos de linea y lineas con espacios vacios del archivo, esto con sed '/^[ ]*$/d' y para mi sorpresa, no elimina nada (intente tambien con sed 's/^$/d' y nada), luego agregar un espacio en blanco en el comienzo de cada línea vacía con sed 's/^/ /g' esto si lo consigo, y por ultimo, lo más dificil, y creamne ya busque información hasta por debajo de la piedras y no logro echar a andar esta maravilla, quitar los comentarios del codigo ( //..., y /*...*/), pero simplemente no veo como, si hay alguien que pueda ayudarme se lo agradecería mucho, estaba probando con el siguiente comando para que mostrara el contenido entre /* y */ y de hecho si lo hace pero, ¿como podria utilizar esto para borrar el contenido que muestra? y por último, ¿como sería el comando para que cambiara todo lo que se encuentra despues de // por un espacio vacio incluyendo //?. Se que es mucho pedir pero en realidad ya estoy un tanto frustrado. De antemano gracias.

sed -n '/\/\*/,/\*\//p'
__________________
¿Que importa el resto?, el resto es simplemente la humanidad, hay que ser superior a humanidad, por fuerza, por altura de alma, por desprecio ...
  #2 (permalink)  
Antiguo 11/10/2005, 11:16
Avatar de c4r1o5  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 1
Jajaja, ya resolví lo de los comentarios entre /* y */ ahora voy con los comentarios //, se agradece cualquier ayuda.
__________________
¿Que importa el resto?, el resto es simplemente la humanidad, hay que ser superior a humanidad, por fuerza, por altura de alma, por desprecio ...
  #3 (permalink)  
Antiguo 11/10/2005, 11:21
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
Eres poco gráfico eehh , la verdad no he entendido mucho sería mejor si colocaras con ejemplos dentro de los tags code para ver más rápido qué es lo que intentas, sé que l has explicado pero al menos yo no me enterado de nada.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #4 (permalink)  
Antiguo 11/10/2005, 12:09
Avatar de c4r1o5  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses
Puntos: 1
Saludos de nuevo, mira supongamos que se tiene un archivo con codigo como el que sigue:

Código PHP:
include ("./algo.php");  // Este es el primer comentario

phpinfo(); 
/* Aqui va otro comentario de una sola linea */

echo "algo";

// Este es un comentario de una sola linea sin codigo anterior a el

echo "Este es mi codigo!";
/* Y este es un comentario 
de varias lineas */ 
Ahora, lo que intento es que el archivo despues de ejecutar el script me arroje algo asi:

Código PHP:
include ("./algo.php"); phpinfo(); echo "algo"; echo "Este es mi codigo!"
Si si, se que no se ve bien, pero de eso se trata, por el momento ya casi lo tengo, Ya logré que cambiara por un espacio vacío los comentarios del tipo /* blablabla */ (sed '/\/\*/,/\*\//d') y estoy tratando de hacer que cambie los comentarios del tipo // blablabla por un espacio vacio (sed 's/\/\/\([[:space:]]*[[:alnum:]]*[^[[:alnum:]]]*\)*//'), aunque estoy teniendo problemas con las tabulaciones, además no he podido hacer que elimine las lineas vacias. Espero que ésta vez si me haya explicado, de no ser así por favor haganmelo saber.

De antemano, gracias.
__________________
¿Que importa el resto?, el resto es simplemente la humanidad, hay que ser superior a humanidad, por fuerza, por altura de alma, por desprecio ...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:00.