-1
 bid     bookname        author
 1       unix    sumitaba das
 2       java    balaguruswamy
 3       db      elmasari
 4       c       padma redddy
 5       ada     yeshwant kanetkar
 6       datastructure   padma redddy
 7       microprocessor  padma redddy

次のように表示されるように、列間の適切なスペースに対して上記の出力をフォーマットするにはどうすればよいですか。

bid     bookname        author
1       unix            sumitaba das
2       java            balaguruswamy
3       db              elmasari
4       c               padma redddy
5       ada             yeshwant kanetkar
6       datastructure   padma redddy
7       microprocessor  padma redddy

SQL クエリの結果をファイルにキャプチャし、そのファイルをプログラムで表示しています。

4

2 に答える 2

1

名前に一時的な「_」を使用する

awk 'NF==4{$3=$3 "_" $4; $4=""} 1' foo.txt | column  -t  | tr '_' ' '
于 2012-07-27T06:42:17.790 に答える
1

入力にはタブで区切られた列があり、タブストップを8に設定してどのように見えるかを貼り付けたようです。その場合は、タブを利用してslitvinovの答えを改善できます。

your_sql_command | column -s '<TAB>' -t

私が書いたコマンドラインにリテラルタブを入力する必要があります。シェル コマンド ラインでこれを行うには、Ctrl-V を押してから Tab を押します。シェル スクリプトに入れる場合は、テキスト エディタが一連のスペースに変換するのではなく、実際のタブを挿入するようにしてください。または、シェルによっては、これが機能する場合があります。

your_sql_command | column -s $'\t' -t
于 2012-07-27T06:53:31.380 に答える