画面幅を活用してスクロールを防ぐために、画面出力を列に積み重ねます。

画面幅を活用してスクロールを防ぐために、画面出力を列に積み重ねます。

HPC クラスターで qstat コマンドを頻繁にgridengine使用しますが、クラスターで実行されているジョブが多いため、出力が長すぎて画面に表示されなくなり、画面の上半分を見ようとスクロールが多くなります。出力。私のターミナルには2つの列のための十分なスペースがあるので、出力が列に流れて並んで表示されることができれば良いでしょう。

単純なデータファイルを使用した例: 明らかに、これはすべての画面出力に共通でなければならないので、以下はより簡単な例です。

私のファイルにはdata1.txt100行が含まれています"This is a test"

>> cat data1.txt
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
This is a test
(etc. until 100th line)
>> 

希望の出力:

>> cat data1.txt | something | something_else -n 2
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
This is a test  This is a test
(etc. until 50 rows)

もちろん、好きなだけ列を指定することをお勧めします。

私が見つけた唯一の同様の質問/回答は次のとおりです。これしかし、スクリプトファイルの代わりにパイプを使って1行でこれを行うより簡単な方法があることを願っています。

答え1

私は解決策を見つけましたpr

サンプルデータファイルの場合:

cat data1.txt | pr -2 -l 60

グリッドエンジンの場合qstat

qstat -f -u "*" | pr -2 -w 270 -l 130

この-2フラグは2つの列のみを指定します。元の列の幅に合うように幅パラメータを調整でき、出力が分割されるページ数を調整するために長さパラメータを-w調整できます。-lより長い出力にはより高い値が必要になることがあります-l

関連情報