入力

出力

Bashとは?

Bash (Bourne Again Shell)は、ほとんどのLinuxディストリビューションとmacOSでデフォルトのコマンドラインシェルです。シェルスクリプトは、自動化、デプロイメントパイプライン、システム管理タスクに広く使用されています。

Bashフォーマッターは、インデントを正規化し(1レベルあたり2スペース)、if/then/fifor/do/donewhile/do/done、関数ブロックを処理し、コメントを保持します。より詳細な検証にはShellCheckもご活用ください。

使い方

1

シェルスクリプトを貼り付け

未整形のBash/シェルスクリプトを左側のエディタに貼り付けるか、アップロードをクリックしてファイルを読み込みます。

2

即座にフォーマット

フォーマッターが自動的にif/fi、do/done、関数ブロックに対して1レベルあたり2スペースでインデントを正規化します。

3

コピーまたはダウンロード

コピーボタンで結果をコピーするか、ダウンロード.shファイルとして保存します。

フォーマット例

例:バックアップスクリプトのフォーマット

フォーマット前:

#!/bin/bash
if [ ! -d "/backup" ]; then
mkdir /backup
fi
for f in *.log; do
cp "$f" "/backup/$f.$(date +%Y%m%d)"
done

フォーマット後:

#!/bin/bash
if [ ! -d "/backup" ]; then
  mkdir /backup
fi
for f in *.log; do
  cp "$f" "/backup/$f.$(date +%Y%m%d)"
done

よくある質問

shとbashの違いは何ですか?

shはPOSIXシェル標準です。Bashはshのスーパーセットで、追加機能を備えています。このフォーマッターはshとbashの両方の構文に対応しています。

シェルスクリプトではタブとスペースのどちらを使うべきですか?

どちらも有効ですが、2スペースまたは4スペースが一般的な規約です。Googleシェルスタイルガイドでは2スペースを推奨しています。このフォーマッターは2スペースを使用します。

zshスクリプトもフォーマットできますか?

はい。zshはbashとほとんどの構文を共有しているため、このフォーマッターはzshスクリプトも適切に処理します。

関連ツール