Ho notato che quando uso echo per stampare qualcosa in un file in DOS, uno spazio viene aggiunto alla stringa. Ho bisogno di stampare la stringa senza lo spazio finale. C'è un modo per farlo, o come soluzione alternativa, rimuovere gli spazi finali dal file?Uso di echo senza spazio finale in DOS
risposta
Se ho compreso correttamente il problema, è stato scritto lo spazio finale.
Invece di
echo string > file
uso
echo string>file
Un rapido ricerca mi ha portato this link
sembra si dispone di più opzioni. Se si vuole analizzare il file post-eco utilizzando uno script, si potrebbe prendere in considerazione questa VBScript
Do While Not WScript.StdIn.AtEndOfStream
WScript.Echo RTrim(WScript.StdIn.ReadLine)
Loop
che loop, riga per riga attraverso un file (di solito .txt), ed esegue RTrim, che le strisce spazi finali.
Acclamazioni
Lo stesso può essere realizzato tramite batch con un token' for/f "= * delim =" %% x in (file.txt) echo% x> file2.txt '. Ma allora perché non farlo nel tuo file originale? –
Supponendo che si sta parlando di cmd.exe
piuttosto che il vero e proprio (piuttosto obsoleto) MSDOS, ci sono una serie di modi per fare questo, la prima è:
echo Here is some text>output.txt
ma Lo trovo un po 'meno leggibile dal momento che sono abituato a essere in grado di delineare chiaramente' argomenti 'sulla riga di comando.
In alternativa, non c'è nulla ti impedisce di scambiare intorno alla fine della riga di comando:
>output.txt echo Here is some text
che vi permetterà di separare ancora gli argomenti pur non avendo spazi estranei messo nel file di output.
In realtà, ho spesso usato questo metodo per i blocchi di codice così:
>output.txt (
echo hello
echo goodbye
)
che scriverà entrambe righe al file. In questo caso, lo trovo preferibile dal momento che all'inizio sai dove sta andando l'uscita, piuttosto che dover andare a vedere la fine del blocco di codice.
Ho scoperto che quando si fa eco da un blocco di codice a volte si perde il ritorno a capo e si stampa su una singola riga. –
Ho anche avuto problemi con gli spazi iniziali, quindi ho usato l'escape caret (^): echo^string1, nel formato sopra. Ha funzionato a meraviglia. – will
'echo Here is some text> output.txt ma trovo che in qualche modo meno leggibile visto che sono abituato a essere in grado di delineare chiaramente "argomenti" sulla riga di comando. Ancora più importante, se il testo termina con un numero, sarà trattato come canale di condutture. La seconda sembra funzionare bene (non ricordo di aver visto quella forma prima). Grazie. – Synetech
- 1. @echo off in DOS (cmd)
- 2. uso corretto di finale
- 3. Uso del modificatore finale privato di Scala?
- 4. uso finale all'interno di ogni ciclo
- 5. Bash: Perché echo aggiunge spazio extra?
- 6. Spazio finale condizionale con completamento programmabile bash
- 7. 'echo' senza ritorno a capo in uno script di shell
- 8. Creazione di funzioni senza parentesi in PHP come 'echo'
- 9. Come echo in Maven senza plug-in Antrun?
- 10. Rimuovere lo spazio vuoto finale in un contenuto del campo
- 11. L'autolayout di iOS cambia lo spazio iniziale e finale
- 12. .NET senza uso di DLL
- 13. tsql utilizza come con caratteri jolly e lo spazio finale?
- 14. Creazione di DMG senza spazio aggiuntivo
- 15. Come faccio a echo in PHP senza ritorni a capo?
- 16. Posso ottenere l'input della console senza echo in python?
- 17. Uso di python per scrivere file di testo con terminazioni di linea DOS su linux
- 18. Come aggiungere un puntino di sospensione in un modello Django utilizzando i truncatewords senza lo spazio finale?
- 19. URL django senza barra finale non reindirizzano
- 20. param opzionale ui-router senza barra finale
- 21. echo in phpunit test
- 22. Rubino diviso per virgola che assorbe lo spazio finale
- 23. Perché lo spazio iniziale/finale mostra come -16?
- 24. percorso WebAPI 404, quando v'è uno spazio finale nell'URL
- 25. è possibile echo un comando echo in un nuovo file?
- 26. Uso di angular 2 senza compilatore dattiloscritto
- 27. Metodo finale proxy in Classe non finale
- 28. Uso di Guice senza metodo principale
- 29. finestra senza spazio clienti in WinAPI
- 30. Differenza tra "@echo off" e "@echo% off"?
Ha! Questo è esattamente! Non avevo capito che l'eco avrebbe emesso la stringa esatta dopo di essa. Grazie! – Rayne
Questo sembra buono, ma non funzionerà. Prova questo: 'echo 1 2 3> file'. Se la stringa si conclude con un numero, il reindirizzamento lo tratterà come un canale pipe. Puoi metterlo tra virgolette, ma potresti non volerlo tra virgolette. – Synetech
@Synetech '(echo 1 2 3)> file' – bers