StackShelf
Bashエラー エラー解決

sed: -e expression #1, char 22: unknown command `z' の原因と解決法

sed: -e expression #1, char 22: unknown command `z' の原因と具体的な解決手順をまとめました。

1分で読める
bashBashエラーsedBashsed: -e expression #1, char 22: unknown

エラーメッセージ(全文)

sed: -e expression #1, char 22: unknown command `z'

このエラーとは

sed: -e expression #1, char 22: unknown command `z' は Bash 開発でよく遭遇するエラーです。

想定環境: Windows / macOS / Linux

よく出る状況: シェルスクリプト / cron

よくある原因

  • set -u
  • クォート
  • cron 環境

解決方法

方法1: shellcheck

shellcheck script.sh.

それでも直らないとき

バージョン情報(Bash のバージョン、OS、実行コマンド)を添えて、エラーメッセージ全文と直前に変更した点を確認してください。ログの数行上にも原因の手がかりが残っていることが多いです。

まとめ

「sed: -e expression #1, char 22: unknown command `z'」は set -u が原因のことが多いです。上記の手順で切り分けてください。

次にやること

同じ Bash カテゴリの関連エラーもあわせて確認してください。

よくある質問

sed: -e expression #1, char 22: unknown command `z' とは何ですか?

sed: -e expression #1, char 22: unknown command `z' は Bash 実行時に表示されるエラーです。set -u

sed: -e expression #1, char 22: unknown command `z' の原因は?

set -u。クォート。cron 環境。

sed: -e expression #1, char 22: unknown command `z' の直し方は?

shellcheck:shellcheck script.sh.

Bash で sed が出るのはなぜ?

シェルスクリプト / cron

sed: -e expression #1, char 22: unknown command `z' を防ぐには?

次に読むべき記事

同カテゴリ「Bashエラー」の記事

学習ルート

体系的に学びたい方はこちらから。

エラー・トラブル集で続きを探す →

あわせて読みたい