知っておくとちょっと便利!seq コマンドの使い方をご紹介

◆ Live配信スケジュール ◆
サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。
⇒ 詳細スケジュールはこちらから
⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください
【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました
生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!!
https://tech-lab.connpass.com/event/315703/

今号では、前回少しだけ登場した seq コマンドの使い方やオプションについてご紹介します!

seq コマンドとは

seq コマンドは、数字の列を出力するコマンドです。
よく for 文の繰り返し処理などで、連続した数字を簡単に出力したい場合に使用される事が多いですが、
連続した数字だけではなく、様々な条件で数字を出力する事ができます。

使い方・オプション

  • 連続した数字を出力する
    「seq 値」のように、引数に1つの数字のみ指定した場合は、1からその数字までの連続した数字を出力します。

    $ seq 5
    1
    2
    3
    4
    5
    
  • 開始・終了の値を指定する
    「seq 開始の値 終了の値」のように2つの数字を指定すると、開始の値から終了の値までの連続した数字を出力します。

    $ seq 6 10
    6
    7
    8
    9
    10
    
  • 開始・増分・終了の値を指定する
    「seq 開始の値 増分の値 終了の値」のように3つの数字を指定すると、開始の値 (1つめ) から終了の値 (3つめ) までを、増分 (2つめ) の値ずつ増やしながら数字を出力します。

    ※開始の値・増分の値・終了の値にはそれぞれ少数を指定することもできます。

    $ seq 1 2 10
    1
    3
    5
    7
    9
    
  • 数字を逆順で出力する
    上でご紹介した増分の値に負の数を指定すると、数を逆順に出力します。
    この時、開始の値と終了の値を指定する必要があります。

    $ seq 10 -2 1
    10
    8
    6
    4
    2
    
  • 区切り文字を変更する
    -s オプションを指定すると、数字を出力する際の区切り文字 (デフォルトは改行) を変更できます。

    $ seq -s, 1 5
    1,2,3,4,5
    

    空白を入れたい場合は、” “ で空白部分を囲みます。

    $ seq -s" " 1 5
    1 2 3 4 5
    
  • 値をゼロ埋めし、文字数を等しくする
    -w オプションを指定すると、最も桁数の多い数字と同じ桁数 (文字数) になるように先頭がゼロ埋めされます。

    $ seq -w 1 20 100
    001
    021
    041
    061
    081
    
  • 書式を指定する
    -f オプションを指定すると、数字の書式を指定できます。主に使用すると考えられる書式は以下の通りです。
    %g 桁数を指定 (先頭をゼロ埋めする) ・%f 浮動小数点以下の桁数を指定

    $ seq -f "%05g" 1 5
    00001
    00002
    00003
    00004
    00005
    $ seq -f "%5f" 1 5
    1.000000
    2.000000
    3.000000
    4.000000
    5.000000
    
アバター画像
About 貝野 友香 71 Articles
OSSよろず相談室でサポートをやっています。時々ライブ配信や勉強会に出ていることもあります。
ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

1人がこの投稿は役に立ったと言っています。


ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!

Be the first to comment

Leave a Reply

Your email address will not be published.


*


質問はこちら 閉じる