Open5
シェルスクリプトを書く技術
ちょっとした処理などのために急に必要になり、都度調べるが抜け漏れがあっても嫌だし、調べるのにも時間がかかったりするので事前にまとめておく
ShellCheck
ShellCheck – shell script analysis tool
オープンソースの静的解析ツールで、シェルスクリプト内のバグを自動的に検出する機能を提供する。
公式ページにテキストエリアがあるので、そこで試すことができる。
pre-commit を使っているなら…
.pre-commit-config.yaml
- repo: https://github.com/shellcheck-py/shellcheck-py
rev: v0.10.0.1
hooks:
- id: shellcheck
GitHub Actions を使っているなら…
- name: Run ShellCheck
uses: ludeeus/action-shellcheck@2.0.0
with:
check_together: 'yes'
TODO: reviewdog 版も確認する
reviewdog/action-shellcheck: Run shellcheck with reviewdog
VSCode を使っているなら…
ShellCheck - Visual Studio Marketplace
shfmt
mvdan/sh: A shell parser, formatter, and interpreter with bash support; includes shfmt
フォーマッター、このスクラップのために調べたら出てきたので、使うときに詳細更新します。
checkbashisms
POSIX準拠のシェルスクリプトとなるように、bash 依存のコマンドや構文をある程度指摘してくれる。
#!/bin/sh
とするときに大事そう。
このスクラップのために調べたら出てきたので、使うときに詳細更新します。
pushd,popd
複雑なディレクトリ間移動を可能にするpushd,popd
これは他の人のスクリプトを見ていたら書いてあったのでメモ
普段使いにも良さそうです