Enrique:<br><br>El operador de redireccion de la salida estandard '>', es soportado por los shells, como bash, zsh y otros. TProcess no es un shell por lo que no reconoce el operador de redireccion. Simplemente lo esta pasando como un parametro mas a cat. Si lo que quieres es concatenar todos los archivos, pasa en la linea de TProcess el comando 'cat archivo1 archivo2 archivoN', lee la salida de TProcess y guardala en un archivo. O simplemente lee cada archivo desde objectpascal y escribe su contenido en un arhivo de salida.<br>
<br>Saludos.<br><br><div class="gmail_quote">El 11 de mayo de 2012 13:19, Maikel Enrique Pernía Matos <span dir="ltr"><<a href="mailto:reprepoli2mz@infomed.sld.cu" target="_blank">reprepoli2mz@infomed.sld.cu</a>></span> escribió:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hola, como parte de la funcionalidad de una app que estoy desarrollando utilizo el<br>
TProcess para comunicar mi app con programas externos especificamente con split y cat de<br>
GNU para OS GNU/linux, en el caso especifico del cat no me está funcionando, adjunto el<br>
codigo para si alguien ve que me falta y desee ayudarme me envíe un e-mail<br>
<br>
<code><br>
procedure unir_fichero(listaFicheros : TStrings; nombreFichero : String);<br>
var<br>
catApp : TProcess;<br>
ficheros : String;<br>
i : Integer;<br>
begin<br>
for i := 0 to listaFicheros.Items.Count-1 do<br>
begin<br>
ficheros := ficheros + ' ' + listaFicheros.Strings[i];<br>
end;<br>
<br>
catApp := TProcess.Create(nil);<br>
catApp.CommandLine := 'cat ' + ficheros + ' > ' + nombreFichero;<br>
catApp.Options := catApp.Options + [poWaitOnExit];<br>
catApp.Execute;<br>
catApp.Free;<br>
<br>
ShowMessage('El proceso a finalizado.');<br>
end;<br>
</code><br>
<br>
<br>
------------------------------<u></u>------------------------------<u></u>----<br>
This message was sent using IMP, the Internet Messaging Program.<br>
<br>
<br>
--<br>
<br>
Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas<br>
<br>
Infomed: <a href="http://www.sld.cu/" target="_blank">http://www.sld.cu/</a><br>
<br>
______________________________<u></u>_________________<br>
Lazarus-es mailing list<br>
<a href="mailto:Lazarus-es@lists.lazarus.freepascal.org" target="_blank">Lazarus-es@lists.lazarus.<u></u>freepascal.org</a><br>
<a href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es" target="_blank">http://lists.lazarus.<u></u>freepascal.org/mailman/<u></u>listinfo/lazarus-es</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Carlos Germán Tejero<br>