Ho scritto un piccolo script in bash che analizza i file forniti o lo stdin se non viene fornito alcun file per produrre un output. Qual è il modo migliore per reindirizzare l'output analizzato su stdout (al termine dello script il risultato è memorizzato in una variabile). Dovrei usare cat
o echo
, o c'è un altro metodo preferito?Script di shell: cat vs echo per l'output
risposta
utilizzare il comando printf
:
printf '%s\n' "$var"
echo
è ok per i casi semplici, ma può comportarsi in modo strano per certi argomenti. Ad esempio, echo
ha un'opzione -n
che indica di non stampare una nuova riga. Se $var
capita di essere -n
, quindi
echo "$var"
non stampa nulla. E ci sono diverse versioni di echo
(incorporate in vari shell o come /bin/echo
) con comportamenti leggermente diversi.
echo
è un ottimo modo per farlo. Dovrai fare qualche salto se vuoi che il cat
funzioni.
echo. Hai i tuoi dati analizzati in una variabile, quindi solo echo "$var"
dovrebbe andare bene. cat è usato per stampare il contenuto dei file, che non è quello che vuoi qui.
Questo è un punto importante – niagr
- 1. 'echo' senza ritorno a capo in uno script di shell
- 2. cat ... vs ... <file
- 3. SQLite per script di shell
- 4. Shell array di script
- 5. script di shell: if
- 6. Ottimizza script shell per più sostituzioni sed
- 7. Script di shell con Wget - Se nidificato internamente per loop
- 8. Impostazione di Shell Script per Vagrant Setup
- 9. Come mantenere righe vuote alla fine di un file quando comando cat utente che ho in script di shell
- 10. valore restituito da script SQL per shell script di
- 11. passare argomenti tra script di shell ma mantenere le virgolette
- 12. shell start/stop per script python
- 13. Shell script "per" la sintassi ciclo
- 14. Script di shell per impostare le variabili di ambiente
- 15. Importazione funzione script shell
- 16. Reindirizzare l'output echo nello script di shell nel file di registro
- 17. Test di unità per script di shell
- 18. Creazione di file con alcuni contenuti con script di shell
- 19. Come chiamare uno script di shell e passare argomento da un altro script di shell
- 20. script di shell per aggiungere un'intestazione a un file
- 21. differenza tra grep Vs cat e grep
- 22. Problema aritmetico con script di shell
- 23. doppi apici all'interno di script php echo
- 24. Come si conservano gli spazi bianchi iniziali con echo su uno script di shell?
- 25. Processo di uccisione in Shell Script
- 26. Controllo versione per script di shell
- 27. compilatori per gli script di shell
- 28. Script di shell per inviare e-mail
- 29. Pretty-print per script di shell
- 30. Una riga if/else condition nello script di shell linux
+1. questo consiglio dovrebbe essere visto più spesso –