Bash Goto 語句
本文解釋了 goto
或跳轉語句及其在 Bash 中的等價物。
什麼是 goto
語句
goto
語句也稱為跳轉語句,用於在程式中從一個程式碼行跳轉到函式內的特定程式碼行。例如,從第 8 行跳轉到第 5 行執行程式。
goto
語句有時也被視為無條件跳轉。goto
語句的使用在程式設計中被認為是一種不好的做法,因為 goto
語句使程式難以理解和難以修改。
Bash 中是否有 goto
語句
沒有, Bash 中沒有 goto
語句。Bash 沒有 goto
運算子。
使用 goto
語句在程式設計中是一種不好的做法,但它對於解決 Bash 指令碼中的不同問題非常有幫助。使用 goto
語句可以幫助我們解決 Bash 指令碼中的任務。
我們在 Bash 中提出了一些不使用 goto
語句就很難解決的情況。例如,我們有一個很長的 Bash 指令碼,需要數小時或數天才能執行。
在這種情況下,我們使用 Bash 指令碼中的 goto
語句來節省時間。當我們除錯程式碼時,在 Bash 指令碼中使用 goto
語句非常有用。
Bash 中 goto
語句的不同替代方案
在 Bash 中沒有直接的等價物,但是我們可以通過不同的替代方案在 Bash 指令碼中使用 goto
語句。我們在 Bash 指令碼中使用 goto
語句,因為它有助於執行長指令碼。
在長的 Bash 指令碼中使用 goto
語句可以幫助我們節省時間。如果我們不使用 goto
語句,就很難處理長的 Bash 指令碼。
讓我們瞭解一個類似於 Bash 中的 goto
語句的 Bash 指令碼。考慮 Bash 中的以下程式碼。
#!/bin/bash
function goto
{
label=$1
cmd=$(sed -n "/$label:/{:a;n;p;ba};" $0 | grep -v ':$')
eval "$cmd"
exit
}
start=${1:-"start"}
goto $start
start:
# your script goes here...
x=100
goto bar
mid:
x=101
echo "Mid is printed"
bar:
x=${x:-10}
echo x is $x
我們通過 Vim 編輯器使用命令 vi goto.sh
建立一個 Bash 檔案,並將上面的程式碼複製貼上到檔案中。
然後我們使用命令 chmod +x goto.sh
授予檔案執行許可權。
我們使用命令 ./goto.sh
執行 Bash 檔案。
輸出將給我們 x is 100
。如果我們想跳轉到程式碼的中間,我們需要使用命令 ./goto.sh mid
。
輸出將給出 Mid is print
和 x is 101
。如果我們想執行程式碼欄,我們使用命令 ./goto.sh bar
。
在輸出中,它會給我們 x is 10
。這樣,指令碼就像 goto
語句一樣工作。
My name is Abid Ullah, and I am a software engineer. I love writing articles on programming, and my favorite topics are Python, PHP, JavaScript, and Linux. I tend to provide solutions to people in programming problems through my articles. I believe that I can bring a lot to you with my skills, experience, and qualification in technical writing.
LinkedIn