このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

シェルスクリプトのセミコロンの打ち所がわからん

bashでの話。

for x in 1 2 3
do
    echo $x
done

この4行のスクリプトは特に問題もありません。行数を減らすため、改行をセミコロンに置き換えてみます。まずは1行目と2行目を、セミコロンをはさんでくっつける。

for x in 1 2 3; do
    echo $x
done

これはOK。さらに2行目と3行目をくっつける。

for x in 1 2 3; do
    echo $x; done

これもOK。となると、次もOKでしょうよ、当然。

for x in 1 2 3; do; echo $x; done

ガーン、ダメなんだってぇ。

syntax error near unexpected token `;'

doの直後のセミコロンを取ればいいそうです。

for x in 1 2 3; do echo $x; done

ウーム、「改行 ←→ セミコロン」という単純なルールじゃ対応できないってことだけど、なんでこんなルールなの?*1

*1:実は「そんなもんか」と思っていたりもしたのですが、露骨に構文エラーを出されると、なんか理不尽だと感じてしまうのです。