私はこの記事を読みました。https://unix.stackexchange.com/a/7718/256195、タブ/スペースが含まれていない場合にのみ可能ですvar
が、私の場合は、以下の例のようにスペースが含まれています。
"this is a test" this_is_a_solid_line_that_doesnot_contain_tab_or_spaces
このコマンドはcolumn
..etcも区別しますが、andthis
is
でのみ動作したいと思います。"this is a test"
this_is_a_solid_line_that_doesnot_contain_tab_or_spaces
目的:ファイルに上記のような複数の行があり、正しくソートされていません。
ベストアンサー1
入力に|
文字がないと仮定すると、引用符に含まれていない一連のスペース|
(または入力にない他の文字)を変換して次にパイプすることができますcolumn -ts'|'
。
<input.txt perl -lpe 's/(".*?")|\s+/$1||"|"/ge' | column -ts'|'