bashにgoto文はありません【代替策あり】

シェル/bash

bashでgoto文を使いたい人

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

goto文はプログラムの流れを複雑化するため、現在ではほとんど使われていません。実際bashにも、goto文に相当する機能はありません。

代替策

gotoの代替策として有効なのはwhile文です。ある条件の間処理を行い、breakしたら後続処理を行うことができます。

またgotoによって戻り、何度か実行したいプログラムコード部分を関数化するのも有効です。

このように、gotoは可読性が悪いためwhile文や関数によって置き換えるのが一般的で、プログラムの変更が比較的容易なためbashだけでなく現在使われている言語はほとんどgoto文の機能はありません。

gotoに相当するコマンドもない

bashの純粋な機能として無いのなら、Linuxコマンドでgotoの直接代替となるものは無いかと考えネットで調査しましたが、ありませんでした。

gotoと名のつく機能はいくつかありますが、いずれもディレクトリのエイリアスを持つ機能で、basicのようなgoto文に相当する代替機能は無いようです。