Carácter de entrada bajo DOS

gouli -  
 labibleatari -
Hola,
intento reemplazar en un archivo de texto la cadena de caracteres pi por el carácter "retorno de carro"
me gustaría hacer esta operación automáticamente con un batch en Windows
no encuentro cómo definir el retorno de carro (en mi ejemplo probé '\n')

El script:
for /f "delims=" %%a in ('type "%1"') do call :commande "%%a"
goto :eof
:commande

set ligne=%1
set ligne=%ligne:pi='\n'%
set ligne=%ligne:"=%
@echo %ligne% >> Nuevo/archivo.txt

Gracias por tu ayuda
Configuración: Windows 2000 Internet Explorer 6.0

10 respuestas

  1. Petitspirou
     
    La respuesta :)

    echo/
    2
  2. FichuCaractere
     
    @Petitspirou : ¿probaste antes de decir tonterías sobre un tema viejo? ;)

    Ninguna prueba exitosa de mi lado. ¿Será debido al sistema? ¿Cuáles son sus configuraciones usadas? Cierto, el tema es viejo, pero nunca se sabe, por casualidad....

    El conjunto echo. (indicado en uno de los enlaces) simula bien la tecla Enter y no el carácter de retorno de carro.

    Ejemplo :
    echo.|pause
    => muestra una pausa en la que el sistema 'empuja' por sí mismo la tecla 'retorno'.

    La solución no debe estar lejos...
    1
  3. gouli
     
    Después de tu comentario modifiqué el script así:

    El script:
    for /f "delims=" %%a in ('type "%1"') do call :commande "%%a"
    goto :eof
    :commande

    set ligne=%1
    set ligne=%ligne:\r\n%
    set ligne=%ligne:"=%
    @echo %ligne% >> Nuevo/archivo.txt

    El problema es que no lo reconoce y me muestra \r\n en lugar del retorno de carro.
    0
  4. gouli
     
    De hecho, para confesarte todo, sí, recuperé el guion.
    Pero ese maldito carácter de retorno de carro es imposible de encontrar en la red...
    0
  5. Non2 Mensajes publicados 5103 Fecha de registro   Estado Colaborador Última intervención   759
     
    Hola,

    La separación de líneas está formada por dos caracteres: retorno de carro (\r) y salto de línea (\n). Corresponden a los caracteres 13 y 10 (0x0D y 0x0A).
    --
    Si los hombres solo hablasen con pleno conocimiento, caerían sobre la tierra un silencio de muerte. (Anne O'Nym)
    -1
  6. Non2 Mensajes publicados 5103 Fecha de registro   Estado Colaborador Última intervención   759
     
    ¿Has probado "\r\n" en vez de '\r\n'? Es una cadena de caracteres, y no un solo carácter.
    --
    Si los hombres debieran hablar solo con pleno conocimiento, caería sobre la tierra un silencio de muerte. (Anne O'Nym)
    -1
  7. Non2 Mensajes publicados 5103 Fecha de registro   Estado Colaborador Última intervención   759
     
    Probablemente puedas inspirarte en esto: http://www.hotline-pc.org/batchscripts.htm#2501
    --
    Si los hombres solo debieran hablar cuando conocen la causa, caería sobre la tierra un silencio mortal. (Anne O'Nym)
    -1
  8. Non2 Mensajes publicados 5103 Fecha de registro   Estado Colaborador Última intervención   759
     
    Creo haber encontrado:
    https://www.generation-nt.com/reponses/return-dans-un-script-batch-entraide-1967251.html
    Pero no sé cómo probarlo, ya que no estoy en Windows. Un archivo .txt con un retorno de carro, y se utiliza la redirección: echo < crlf.txt.
    Curioso, sin embargo, que no sea posible en batch. Otra opción tal vez sea probar copy con. Mis recuerdos están lejos, pero volverían si me pusiera a ello.
    --
    Si los hombres solo debieran hablar con conocimiento de causa, caería en la tierra un silencio de muerte. (Anne O'Nym)
    -1