次のような入力ファイルがあります。
MB1 00134141
MB1 12415085
MB1 13253590
MB1 10598105
MB1 01141484
...
...
MB1 10598105
5行を結合して1行にまとめたい。bashスクリプトでbashスクリプトを処理して、次のように出力を生成したい-
MB1 00134141 MB1 12415085 MB1 13253590 MB1 10598105 MB1 01141484
...
...
...
次のスクリプトを作成しましたが、動作しますが、サイズが 23051 行のファイルでは速度が低下します。より高速にするために、より良いコードを書くことはできますか?
#!/bin/bash
file=timing.csv
x=0
while [ $x -lt $(cat $file | wc -l) ]
do
line=`head -n $x $file | tail -n 1`
echo -n $line " "
let "remainder = $x % 5"
if [ "$remainder" -eq 0 ]
then
echo ""
fi
let x=x+1
done
exit 0
次のコマンドを実行しようとしましたが、いくつかの数字が台無しになります。
cat timing_deleted.csv | pr -at5