Voglio unire le righe in modo che le linee unite siano allineate sullo stesso limite. UNIX paste (1) lo fa bene quando tutte le linee si incontrano allo stesso limite di tabulazione, ma quando le linee differiscono per dimensioni (nel file in cui le linee vengono unite), il testo risulta scomodo.Come allineare le colonne usando paste (1)? o come fare una tabella allineata per unire le linee nella shell?
Esempio di pasta (1) che ha l'effetto desiderato:
$ echo -e "a\nb\nccc\nd" | paste - -
a b
ccc d
Esempio di pasta (1) con effetto indesiderato:
$ echo -e "a\nb\ncccccccccccc\nd" | paste - -
a b
cccccccccccc d
noti come 2a colonna non è allineata . Voglio "b" allineare con "d", che richiede una scheda aggiuntiva. Purtroppo credo che questo sia il limite per l'utility paste, quindi se qualcuno ha qualche idea su come ottenere l'effetto desiderato sopra, mi piacerebbe sentirlo.
Provare a usare [ 'printf'] (http://linux.die.net/man/1/printf) per stampare i dati nei campi a larghezza fissa prima di passarlo a' paste' (assicurati che il campo sia lungo quanto il valore più lungo) – bta