こんにちは。YOSHITAKA(@YOSHITA19704216)です。

初心者
bashを使ってシェルスクリプティングをしてますが、basicのようなgoto文を使いたいです。goto文かそれに相当するコードを書くことはできますか?

よしたか
学んだことをアウトプットしていきます。

 

この記事を読むことで
  • cshellからbashに変更時にgoto文の代替方法がわかります。

cshellからbashに変更時にgoto文の代替方法

対象者

 

対象
  • shell scriptを変更している人

    です。

    解決策 関数(function)にする

    bashにも、goto文に相当する機能はありません。

    例えばつぎおような内容があったとします。

    #!/bin/bash
    if [ "$1" = "" ]
    then
     goto Label_NG 
    else
     goto Label_OK
    fi
    
    
    Label_OK:
      echo "OK"
      exit 0
    
    Label_NG:
      echo "NG"
      exit 1

     

    これを次のように変更すれば動くことを確認しました。

    #!/bin/bash
    function Label_OK() {
      echo "OK"
      return 0
    }
    
    function Label_NG() {
      echo "Error"
      return 1
    }
    
    if [ "$1" = "" ]
    then
     Label_NG 
    else
     Label_OK
    fi

     

    ポイントに記載しましたが順番が重要です。

     

    ポイント
    • 関数を処理の前に配置しないと実行されないので注意が必要です。

    まとめ

    今回はcshellからbashに変更時にgoto文は使えないため、関数(function)する方法についてお伝えしました。

     

    ※プログラミングは習得中ですので、参考程度に記事を読んでください。

    あなたは「Web集客」に限界を感じていませんか?

    サイトをただ作るだけで満足ですか?

    あなたのサービスやコンテンツはとっても有益なものがたくさんあります。

    良いコンテンツも埋もれてしまっては全く意味がありません。

    正しい知識と実践で、SEO対策はもちろん、ユーザビリティーを考えたサイトを作りませんか?

    私と歩めばWebマーケティング知識とWordPressスキルが定着し、サイト回遊率、再訪問がアップします。

    しかも、これだけでは終わりません!!

    その先の「攻めのメディア」と組み合わせ、あなたのサービスを広めて売上を伸ばしていきます。

    サイトを育てて、長い間愛されることのできるWordPressサイトからの集客導線(ゴールデンルート)を一緒に作りませんか?

    ↓ ↓ ↓ ↓ ↓ ↓ 

    おすすめの記事