L'ordre "eco" sempre afegirà una línia nova quan l'executeu en una consola d'ordres. Això és convenient quan voleu imprimir variables ambientals i altres dades. Separa les dades individuals de l'ordre i facilita la seva identificació.
Però, si voleu copiar la sortida i utilitzar-la en una altra consola, la línia addicional pot ser un problema. A més, si necessiteu utilitzar l'ordre echo però voleu crear un fitxer CSV, la línia invisible pot fer que tots els vostres esforços siguin inútils.
Aquest article explicarà com utilitzar l'ordre "eco" sense crear una línia nova per a diferents plataformes.
Com fer ressò sense Newline a l'indicador de comandaments de Windows
Si teniu Windows 10, podeu accedir al símbol del sistema per introduir les vostres ordres. Hi ha maneres en què la nova línia pot causar problemes, especialment si voleu copiar la sortida i utilitzar-la fora del símbol del sistema.
Per tant, si escriviu "eco 1" com a comanda al vostre indicador, obtindreu 1 com a sortida, seguit d'una línia nova i una altra d'entrada.
Però si voleu utilitzar la mateixa ordre sense afegir una línia nova, heu d'escriure ordres addicionals després de "eco".
Repassem-ho pas a pas:
- Premeu les tecles "Windows" i "R" alhora per obrir la finestra "Executar".
- Escriviu "cmd" al quadre Obre.
- Escriviu l'ordre següent al símbol del sistema:
eco | defineix /p=el teu text o variable (en aquest exemple és '1')
- Premeu "Enter" per executar aquesta ordre.
- No hauríeu de veure una línia nova entremig.
Si voleu copiar la sortida al porta-retalls, haureu d'utilitzar l'ordre "eco" amb l'ordre "clip".
- Utilitzeu el codi següent:
eco | defineix /p=el teu text o variable|clip
- L'ordre 'clip' copiarà el text o la variable al porta-retalls.
- Obriu qualsevol eina de text. Per exemple, Bloc de notes.
- Enganxeu-hi el porta-retalls.
- Hauríeu de veure la vostra sortida en una cadena de text al Bloc de notes.
Com fer ressò sense Newline a Bash
Bash és la consola d'ordres a Linux i Mac OS, que també reconeix l'ordre "eco". En el cas de Bash, echo també crea una línia nova a la sortida, però podeu utilitzar diferents passos per aturar-la.
La millor manera d'eliminar la nova línia és afegir "-n". Això indica no afegir una línia nova.
Quan vulgueu escriure ordres més complicades o ordenar-ho tot en una sola línia, hauríeu d'utilitzar l'opció "-n".
Per exemple, si introduïu el codi:
per a x a ${array[@]}
fer
eco $x
fet| ordenar
L'ordre 'echo $x' ordenarà les variables en línies separades. Pot semblar una cosa així:
1
2
3
4
5
Per tant, no imprimirà els números a la mateixa línia.
Hi ha una manera de mostrar la sortida en una sola línia; només heu d'utilitzar l'ordre '-n'.
Es veuria així:
per a x a ${array[@]}
fer
eco -n $x
fet| ordenar
Premeu Retorn i hauríeu de veure els números a la mateixa línia.
Echo amb l'ordre Printf a Bash
Una altra manera d'evitar afegir una línia nova amb "eco" és combinar-la amb l'ordre "printf".
Per exemple, utilitzem el codi següent:
NewLine=`printf “n”`
echo -e "Línia1${NovaLínia}Línia2"
Sense afegir espai després de "n", obtindreu aquest resultat:
Línia 1Línia 2
Tanmateix, si afegiu un espai després de "n" com aquest:
NewLine=`printf “n “`
echo -e "Línia1{NovaLínia}Línia2"
Obtindreu el següent resultat:
Línia 1
Línia 2
Si voleu que totes les vostres entrades s'imprimeixin a la mateixa línia per algun motiu, sempre podeu utilitzar el primer exemple.
Què passa amb PowerShell?
El PowerShell de Windows no crea cap nova línia amb l'ordre echo. Però si voleu afegir contingut directament a un fitxer de text mitjançant PowerShell, hauríeu d'escriure l'ordre "-NoNewline" després del text o de la variable.
Això és molt útil per crear un fitxer CSV, per exemple. O, si per algun motiu necessiteu que totes les vostres variables romanguin a la mateixa línia.
Tingueu en compte que sense l'ordre "-NoNewLine", encara es mourà automàticament a una línia nova després d'arribar al final d'una línia.
L'eco de Thor
Ara que ja sabeu com evitar afegir una nova línia amb eco, podeu continuar la codificació.
Si coneixeu altres mètodes per aconseguir-ho, no us oblideu de compartir amb la comunitat als comentaris. Moltes gràcies per endavant.