;; 是什么意思?做什么?

;; 是什么意思?做什么?

如果我尝试a;;b在 sh 中运行,我会收到此错误:

sh: <number>: Syntax error: ";;" unexpected

如果我尝试,a;;;b我会得到同样的错误,而不是;;;;;所以我认为这;;意味着什么,尽管我不知道这意味着什么。

这是一个例子:

$ echo A;;echo B
sh: 1: Syntax error: ";;" unexpected
$ echo A;;;echo B
sh: 1: Syntax error: ";;" unexpected
$ echo A; ;echo B
sh: 1: Syntax error: ";" unexpected

在这里你可以看到,当我使用; ;而不是错误是不同的,与我之前没有使用命令的;;事实有关。似乎是一个不同的运算符,尽管我不知道它适用于什么。;;;

答案1

;;在 POSIX shell 中分隔case...esac构造中的语句:

case foo in (a) cmd1; cmd2 ;; (b) cmd3; cmd4; esac

要了解命令,您可以运行man that-command.如果您的寻呼机是less,您可以通过按 在手册页中进行搜索/

在这里,您可以运行man sh并搜索;;.某些 shell 支持其他运算符来分隔语句case(例如;&in ksh93// zsh/ bash、in / 、in )。mksh&|zshmksh;;&bash

相关内容