Ubuntu 的 break 命令的手册在哪里?
我跑
~ master $ man break
No manual entry for break
~ master $ break
break: not in while, until, select, or repeat loop
~ master $
如果没有手册,很难理解该命令的用途。它可能与内核的 C 代码的 for 循环有关。我不认为这是 Bash 的中断。
答案1
对于 Bash:
$ help break
break: break [n]
Exit for, while, or until loops.
Exit a FOR, WHILE or UNTIL loop. If N is specified, break N enclosing
loops.
Exit Status:
The exit status is 0 unless N is not greater than or equal to 1.
您看到的错误消息是由 Bash 发出的。您试图在什么上下文中理解“break”?
在 C 语言中,break
是一个关键字。参见本维基百科了解更多信息。部分内容如下:
break 语句将立即退出封闭循环。
答案2
如果我理解正确的话,你想要的是:
man bash
或者你也可以发出:
man bash | grep -C5 "break [n]"
编辑:抱歉,我错过了你关于不是 bash break 的说明。:-| 但是我无法重现你收到的错误消息。我得到的是:
bash: break: only meaningful in a `for', `while', or `until' loop
你使用哪个版本的 ubuntu?哪个版本的 bash?我的是 4.0.33(1)-release (x86_64-pc-linux-gnu) 版本... 我问这个问题只是为了防止这两条不同的消息都来自 bash,但来自不同的版本...
什么是
which break
输出给你?如果它是一个独立程序,你将获得可执行文件所在的目录,因此可能能够理解安装是哪个部分。如果它是一个 bash(或其他 shell)命令,它将默默失败(没有输出)。
答案3
谷歌搜索后发现这链接,表明break
您遇到的命令确实不是来自bash
;而是来自zsh
。因此,您应该能够通过发出来获取正确的手册man zshbuiltins
。
答案4
我也安装了 ubuntu 9.10。如果出现问题:
media@faun:~$ break
-bash: break: only meaningful in a `for', `while', or `until' loop
media@faun:~$
您会发现这个输出肯定来自 bash。如果您发出
media@faun:~$ su -
media@faun:~$ find / -name "break"
和
media@faun:~$ which break
media@faun:~$ type break
您会看到没有其他二进制文件,并且 break 是 bash 内置的。break 的手册位于 bash 手册中。
media@faun:~$ man bash
您收到的错误消息确实是由于在不起作用的情况下使用内置中断而导致的。您可以像这样尝试:
media@faun:~$ for i in 0 1
> do
> echo $i
> done
0
1
media@faun:~$