水平形式で出力を繰り返しエコーする方法は?

水平形式で出力を繰り返しエコーする方法は?

私は次のような出力が欲しい:abcde

私が試したとき:

for letter in {a..e}; do
  echo $letter 
done

私は次のような結果を得ます。

a
b
c
d
e

私はこれを試しました:

for letter in {a..e}; do
  echo -e "\t$letter" 
done

出力:

      a
      b
      c
      d
      e

全行にわたって次のタブに送信されます!

ベストアンサー1

デフォルトでは、Echoは各実行後に改行文字を追加します。あなたはできます

  • Echoが一度実行されるように、中括弧拡張をパラメータとして提供します。スペースで区切られた引数があります。

    echo {a..e}
    
  • -n各実行後に改行が表示されないように使用し、変数拡張後に手動でスペースを追加します。

    for letter in {a..e}; do
        echo -n "$letter " 
    done
    
  • Printfを使う(PrintfがEchoよりも優れているのはなぜですか?)。

    printf "%s " {a..e}
    

おすすめ記事