bash-hackers-wiki/docs/syntax/ccmd/intro.md
Hanson Char b75c3a588b Fix hyperlinks of markdown pages at depth 3
find docs/ -depth 3  -name '*.md' | xargs grep '(.*/' -l | \
  xargs -I{} \
  sed -i '' \
  -e 's%(/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)\(.md\)\{0\})%(../../\1/\2.md)%g' \
  -e 's%(/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)#\([a-zA-Z_-][0-9a-zA-Z_-]*\))%(../../\1/\2.md#\3)%g' \
  -e 's%(/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)\(.md\)\{0\})%(../../\1/\2/\3.md)%g' \
  -e 's%(/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)/\([^/#).][^/#).]*\)#\([a-zA-Z_-][0-9a-zA-Z_-]*\))%(../../\1/\2/\3.md#\4)%g' \
  -e 's%](\([^:.>)#][^:.>)#]*\))%](../../\1.md)%g' \
  -e 's%](\([^:.>)#][^:.>)#]*\)#\([^:.>)#][^:.>)#]*\))%](../../\1.md#\2)%g' \
  {}

Related to https://github.com/flokoe/bash-hackers-wiki/issues/10
2024-01-28 17:26:57 -08:00

36 lines
1.2 KiB
Markdown

# Bash compound commands
The main part of Bash\'s syntax are the so-called **compound commands**.
They\'re called like that because they use \"real\" commands ([simple
commands](../../syntax/basicgrammar.md#simple_commands) or
[lists](../../syntax/basicgrammar.md#lists)) and knit some intelligence around
them. That is what the essential \"Bash language\" is made of.
## Command grouping
- grouping: [command grouping](../../grouping_plain.md)
- grouping again: [command grouping in a subshell](../../grouping_subshell.md)
## Conditional reactions
Note that conditionals can also be scripted using
[list](../../syntax/basicgrammar.md#lists), which are syntax elements, not
commands.
- the \"new\" test command: [conditional
expression](../../conditional_expression.md)
- if-clause: [conditional branching](../../if_clause.md)
- case statement: [pattern-based branching](../../case.md)
## Loops
- [classic for-loop](../../classic_for.md)
- [C-style for-loop](../../c_for.md)
- [while loop](../../while_loop.md)
- [until loop](../../until_loop.md)
## Misc
- math: [arithmetic evaluation](../../arithmetic_eval.md)
- menus: [user selections](../../user_select.md)