El comando "echo" siempre agregará una nueva línea cuando lo ejecutes en una consola de comandos. Esto es conveniente cuando desea imprimir variables ambientales y otros datos. Separa las piezas individuales de información del comando y facilita su identificación.
Pero, si desea copiar la salida y usarla en otra consola, la línea adicional puede ser un problema. Además, si necesita usar el comando echo pero desea crear un archivo CSV, la línea invisible puede hacer que todos sus esfuerzos sean inútiles.
Este artículo explicará cómo usar el comando "echo" sin crear una nueva línea para diferentes plataformas.
Cómo hacer eco sin nueva línea en el símbolo del sistema de Windows
Si tiene Windows 10, puede acceder al símbolo del sistema para ingresar sus comandos. Hay formas en las que la nueva línea puede causar problemas, especialmente si desea copiar la salida y usarla fuera del símbolo del sistema.
Entonces, si escribe "echo 1" como comando en su indicador, obtendrá 1 como salida, seguido de una nueva línea y otra línea de entrada.
Pero si desea utilizar el mismo comando sin agregar una nueva línea, debe escribir comandos adicionales después de "echo".
Vamos a repasarlo paso a paso:
- Presione las teclas "Windows" y "R" al mismo tiempo para abrir la ventana "Ejecutar".
- Escriba "cmd" en el cuadro Abrir.
- Escriba el siguiente comando en el símbolo del sistema:
echo | set / p = su texto o variable (en este ejemplo es "1")
- Presione "Enter" para ejecutar este comando.
- No debería ver una nueva línea en el medio.
Si desea copiar la salida al portapapeles, tendrá que usar el comando "echo" con el comando "clip".
- Utilice el siguiente código:
echo | set / p = su texto o variable | clip
- El comando "clip" copiará el texto o la variable al portapapeles.
- Abra cualquier herramienta de texto. Por ejemplo, Bloc de notas.
- Pegue el portapapeles en él.
- Debería ver su salida en una cadena de texto en el Bloc de notas.
Cómo hacer eco sin nueva línea en Bash
Bash es la consola de comandos en Linux y Mac OS, que también reconoce el comando "echo". En el caso de Bash, echo también crea una nueva línea en la salida, pero puede usar diferentes pasos para detenerlo.
La mejor manera de eliminar la nueva línea es agregar "-n". Esto indica que no se debe agregar una nueva línea.
Cuando desee escribir comandos más complicados u ordenar todo en una sola línea, debe usar la opción "-n".
Por ejemplo, si ingresa el código:
para x en $ {matriz [@]}
hacer
echo $ x
hecho | clasificar
El comando "echo $ x" clasificará las variables en líneas separadas. Puede verse algo como esto:
1
2
3
4
5
Por lo tanto, no imprimirá los números en la misma línea.
Existe una forma de mostrar la salida en una sola línea; solo tiene que usar el comando "-n".
Se vería así:
para x en $ {matriz [@]}
hacer
echo -n $ x
hecho | clasificar
Presione regresar y debería ver los números en la misma línea.
Eco con el comando Printf en Bash
Otra forma de evitar agregar una nueva línea con "echo" es combinarla con el comando "printf".
Por ejemplo, usemos el siguiente código:
NewLine = `printf“ n ”`
echo -e "Line1 $ {NewLine} Line2"
Sin agregar espacio después de la "n", obtendrá este resultado:
Línea1Línea2
Sin embargo, si agrega un espacio después de "n" como este:
NewLine = `printf" n "`
echo -e "Line1 {NewLine} Line2"
Obtendrá el siguiente resultado:
Línea 1
Línea 2
Si desea que toda su entrada se imprima en la misma línea por alguna razón, siempre puede usar el primer ejemplo.
¿Qué pasa con PowerShell?
PowerShell de Windows no crea una nueva línea con el comando echo. Pero si desea agregar contenido directamente a un archivo de texto a través de PowerShell, debe escribir el comando "-NoNewline" después del texto o la variable.
Esto es extremadamente útil para crear un archivo CSV, por ejemplo. O, si por alguna razón necesita que todas sus variables permanezcan en la misma línea.
Tenga en cuenta que sin el comando "-NoNewLine", el todavía se moverá automáticamente a una nueva línea después de llegar al final de una línea.
Eco de Thor
Ahora que sabe cómo evitar agregar una nueva línea con echo, puede continuar con la codificación.
Si conoce otros métodos para lograrlo, no olvide compartirlo con la comunidad en los comentarios. Muchas gracias de antemano.