seq – 連続した数値を出力するコマンド

整形・フォーマット

seq コマンドは、指定した範囲や間隔で数値の連続を生成して標準出力に表示 するためのコマンドです。
ループ処理やファイル名の生成、テストデータ作成などによく利用されます。

構文(Syntax)

seq [オプション] [開始値] [増分] 終了値

開始値増分 を省略すると、デフォルトはそれぞれ 1 になります。

主なオプション一覧

オプション説明使用例
(なし)数字の列を出力seq 5
-w桁数を揃えてゼロ埋め出力seq -w 1 10
-s STRING区切り文字を指定(デフォルトは改行)seq -s , 1 5
-f FORMAT書式指定(printf形式)seq -f "num%03g" 1 5
--helpヘルプを表示seq --help
--versionバージョン情報を表示seq --version

実行例

1 から 5 までを出力

seq 5

出力:

1
2
3
4
5

開始値と終了値を指定

seq 3 7

出力:

3
4
5
6
7

開始値・増分・終了値を指定

seq 2 2 10

出力:

2
4
6
8
10

桁を揃えてゼロ埋め

seq -w 1 12

出力:

01
02
03
...
12

区切り文字をカンマに変更

seq -s , 1 5

出力:

1,2,3,4,5

書式を指定して出力

seq -f "item_%03g" 1 3

出力:

item_001
item_002
item_003

小数も扱う

seq 0.5 0.5 2

出力:

0.5
1.0
1.5
2.0

エラー例(終了値のみ負数)

seq -5

出力例:

seq: invalid zero increment value
Try 'seq --help' for more information.

関連コマンド

  • yes : 繰り返し文字列を出力
  • printf : 書式付きで出力
  • for : シェルのループ構文で数列を使う場合によく組み合わせる

備考

  • seq は GNU Coreutils に含まれていますが、シェルによっては {1..5} というブレース展開でも代替可能です。
    例: echo {1..5}
  • 大きな範囲を指定すると大量に出力されるため、headxargs と組み合わせて使うことが多いです。

参考

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント