Czy istnieje proste narzędzie lub skrypt do sortowania wyników jednego z moich skryptów? Mam dane w jakiejś formie:
A aldkhasdfljhaf
B klajsdfhalsdfh
C salkjsdjkladdag
D lseuiorlhisnflkc
E sdjklfhnslkdfhn
F kjhnakjshddnaskjdh
ale jeśli stanie się to dwa długie, zapisz dane w następującej formie (gdzie wciąż są uporządkowane pionowo):
A aldkhasdfljhaf D lseuiorlhisnflkc
B klajsdfhalsdfh E sdjklfhnslkdfhn
C salkjsdjkladdag F kjhnakjshddnaskjdh
Po przeczytaniu strony nie sądzę, że column
byłoby to właściwe, ale nie jestem pewien. Łatwo jest podzielić na formę:
A B
C D
E F
drukując tylko \n
co drugą linię (co robi mój obecny skrypt). Jakieś pomysły? Dzięki!
shell-script
text-processing
awk
columns
Hemmer
źródło
źródło
-t)... But for yours to work reliably you probably need
--column`.Aby uporządkować dane wyjściowe,
pr
konwertuje pliki tekstowe do drukowania:na przykład
źródło
Możesz podzielić plik na dwie części (z taką samą liczbą linii lub pierwszy plik ma jedną linię więcej), a następnie wykonaj następujące czynności:
Jeśli długość linii jest zbyt różna, może być konieczne użycie printf do dostosowania długości przez wypełnienie spacjami.
źródło
... | paste - -
kiedy „dzielenie długiego wyjścia” ...Możesz użyć zwykłego
columns
:UWAGA:
columns
komenda jest częściąautogen
pakietu w systemie Fedora 14.Bibliografia
źródło
columns: command not found
. autogen ?autogen
. Właśnie sprawdziłem w moim systemie Fedora 14. Wspomnę o tym również w odpowiedzi.