Se eseguo il comando cat file | grep pattern, ottengo molte righe di output. Come concatenate tutte le linee in una riga, sostituendole efficacemente "\n"con "\" "(end with "seguita da spazio)?
cat file | grep pattern | xargs sed s/\n/ /g
non funziona per me.
sedscript tra virgolette singole in modo che Bash non si scherzi (dal momento chesed s/\n/ /gchiamasedcon due argomenti, vale a dires/n/e/g); (2) da quando si desidera che l'uscita dicat file | grep patternessere l' ingresso ased, non gli argomenti ased, è necessario eliminarexargs; e (3) non è necessariocatqui, poichégreppuò prendere un nome file come secondo argomento. Quindi avresti dovuto provaregrep pattern file | sed 's/\n/ /g'. (In questo caso non avrebbe funzionato, per motivi indicati nel link sopra, ma ora lo sai per il futuro.)