1行おきにモニターに印刷する方法

1行おきにモニターに印刷する方法

下記の小さなスクリプトを使用して、1 回おきに結果を画面に出力したいのですが、その方法は何ですか?

#!/bin/bash

for ((n=5, j=1; j<=9;j++))
do
echo "rez: $n*$j"=$((n*j))

done

答え1

sed出力(任意のコマンド/スクリプト)をフィルタリングし、1行おきに出力して最終出力をダブルスペースにするには、次のようにします。
奇数行のみを出力します。

command | sed n\;g

偶数行のみを印刷します:

command | sed g\;n

指示できるfor ... done

答え2

#! /bin/bash

for ((n=5, j=1; j<=9;j++)); do
    if [ $((j%2)) -eq 1 ]; then
        echo "rez: $n*$j"=$((n*j))
    else
        echo
    fi
done

rez: 5*1=5

rez: 5*3=15

rez: 5*5=25

rez: 5*7=35

rez: 5*9=45

関連情報