Foros del Web » Programando para Internet » PHP »

sed en php

Estas en el tema de sed en php en el foro de PHP en Foros del Web. sed es un comando en linux para sustituir palabras o caracteres de un archivo, me gustaria saber si este comando existe en php o algo ...
  #1 (permalink)  
Antiguo 01/10/2004, 10:32
Avatar de bichomen  
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 20 años, 10 meses
Puntos: 2
sed en php

sed es un comando en linux para sustituir palabras o caracteres de un archivo, me gustaria saber si este comando existe en php o algo parecido, gracias

bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332
  #2 (permalink)  
Antiguo 01/10/2004, 12:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Directamente no existe en PHP tal función .. pero si que tienes funciones para "abrir" tu archivo (hacia un string por ejemplo) y de ahí aplicar funciones de tratamiento de cadenas (strings) para buscar tu palabra o sustituirla como por ejemplo vía expresiones regulares.

También puedes usar tu própio comando de Linux bajo funciones como exec(), system() y afines que sirven para ejecutar desde PHP comandos como si estuvieses en la "consola" (Shell) del S.O. que uses tu servidor.

Un saludo,
  #3 (permalink)  
Antiguo 02/10/2004, 12:14
Avatar de bichomen  
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 20 años, 10 meses
Puntos: 2
Pues creo q el comando q mas se le ajusta es el exec() pero no funciona, osea al script le paso un archivo, que es donde tiene q realizar los cambios y luego la salida lo hace en otro archivo q si no existe lo crea, esto desde la shell de linux me funciona a la perfeccion con este script, pero cuando lo intento ejecutar desde php con exec() no hace nada, el codigo es este:

<?php
exec("script fichero1 fichero2");
?>

donde fichero1 es el archivo a procesar y fichero2 es el archivo resultante, e probado poner las rutas absolutas, e dado permisos de escritura a las carpetas pertinentes, pero nada, tb e probado system() y otros :(

bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332
  #4 (permalink)  
Antiguo 04/10/2004, 10:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tienes que tener encuenta las restricciones del usuario con que PHP "sale" al S.O. (nobody o el que use Apache normalmente). E indicar a ser posible las rutas hacia tu "script".

También tienes dentro de la función exec() o system() parámetros para obtener el mensaje de error de la ejecución de tu comando .. por ejemplo tanto de la própia ejecución de tu exec() en sí (problemas de permisos .. etc) hasta de los mensajes del S.O. que arroje este. Así podrás evaluar bien el problema.

Un saludo,
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 00:52.