本文へ移動

無料のコマンドラインツール

シフトCSVの人数不足をコマンドで検査するCLI

シフト表をCSVで保存して、コマンドを1つ実行する。それだけで、必要人数を下回る時間帯と、各自の勤務時間(休憩を除く)が表示されます。Node.js 18以上があれば動き、データは外部に送信されません。

運営:シフトエンジン / 最終更新:

できること

  • 時間帯ごとの人数と、必要人数を下回る区間の表示
  • 休憩を除いた勤務時間と勤務日数の集計
  • JSON形式の出力(ほかのプログラムから読み込めます)
  • 終了コードで不足の有無を判定

できないこと・対象外

  • シフトの自動作成
  • 担当業務・法令・本人の希望の判定
  • 日またぎの勤務、1日に複数回の休憩
  • Excelファイル(.xlsx)の直接読み込み(CSVに保存してください)

使い方

ダウンロードした shift-check.mjs と、シフトのCSVを同じ場所に置き、ターミナルで実行します。

記入例・数式
node shift-check.mjs sample-shifts.csv --need "10:00-13:00=2,13:00-19:00=3"

# 実行結果
人数が足りない区間が4件あります。

■ 2026-10-12
  13:00〜14:00  2人(必要3人)
  15:00〜16:00  2人(必要3人)
  17:00〜18:00  2人(必要3人)
  18:00〜19:00  1人(必要3人)

■ 勤務時間(休憩を除く)
  A  1日  7時間
  B  1日  6時間
  C  1日  6時間

CSVの書き方

1行目にヘッダー、2行目からシフトを1人1日1行で書きます。時刻は HH:MM の形式です。日本語の列名も使えます。

CSVの書き方
列名(日本語)必須内容
date(日付)必須勤務日。2026-10-12 のように、同じ日は同じ書き方にそろえる
name(氏名)必須スタッフ名。A・B・Cなどの記号をおすすめします
start(開始)必須勤務開始。例:10:00
end(終了)必須勤務終了。開始より後の時刻(日またぎは対象外)
break_start(休憩開始)任意休憩の開始。休憩がない場合は空欄
break_end(休憩終了)任意休憩の終了。勤務時間の中に収める

ExcelやGoogleスプレッドシートからCSVにする

今使っている表を、1人1日1行の形に整えてからCSVで保存します。

  1. シフトを、列 date, name, start, end(必要なら break_start, break_end)の表に整える。
  2. Excelの場合は「名前を付けて保存」で「CSV UTF-8(コンマ区切り)」を選ぶ。
  3. Googleスプレッドシートの場合は、ファイルのダウンロードから「カンマ区切りの値(.csv)」を選ぶ。
  4. 保存したCSVのファイル名を、上のコマンドに指定する。

オプションと終了コード

刻み幅や出力の形を変えられます。終了コードを使うと、不足の有無をほかのプログラムから判定できます。

オプションと終了コード
指定意味
--need "10:00-13:00=2,..."必要人数(必須)。時間帯ごとにカンマ区切りで指定
--step 15判定の刻み幅(分)。省略時は30
--format jsonJSON形式で出力する
終了コード 0必要人数を下回る区間なし
終了コード 1人数が足りない区間あり
終了コード 2入力エラー(行番号つきのメッセージを表示)

数え方のルール

結果は人数と休憩だけの機械的な確認です。

  • 勤務は開始時刻を含み、終了時刻を含みません
  • 休憩中の人は人数に数えません
  • 必要人数が時間帯で重なる場合は、大きいほうを使います
  • 担当業務、勤務時間の上限、連続勤務、本人の希望は判定しません

よくある質問

Node.jsはどうやって入れますか?

Node.jsの公式サイトから、LTS版をインストールしてください。インストール後、ターミナルで node --version と入力し、18以上であれば使えます。

入力したデータは送信されますか?

このツールはネットワーク通信を行わず、手元のパソコン内でCSVを読み込んで計算します。

Excelファイルをそのまま検査できますか?

直接は読み込めません。CSV UTF-8で保存したファイルを指定してください。

参考にした公式情報

制度・仕様の最新の内容は、次の公式情報で確認してください。このページの数値や基準は、公式の内容に代わるものではありません。

シフトエンジン

希望の回収とExcel出力は、専用のツールで。

シフトエンジンは、10〜30人規模の小売店向けに、提出リンクでの希望回収・人数の確認・Excel出力を支援します。まずは今のExcelの使い方を無料で相談できます。