$(…)与bash中的(…)相同吗? $((…))与(())相同) $ {…}与{…}相同更一般地说,美元符号代表什么?谢谢。
> $(…)表示执行括号中的命令并返回其标准输出。例:
$ echo "The current date is $(date)" The current date is Mon Jul 6 14:27:59 PDT 2015
>(…)表示在subshell中运行括号中列出的命令。例:
$ a=1; (a=2; echo "inside: a=$a"); echo "outside: a=$a" inside: a=2 outside: a=1
> $((…))表示执行算术并返回计算结果。例:
$ a=$((2+3)); echo "a=$a" a=5
>((…))表示执行算术,可能改变shell变量的值,但不返回其结果。例:
$ ((a=2+3)); echo "a=$a" a=5
> $ {…}表示返回大括号中命名的shell变量的值。例:
$ echo ${SHELL} /bin/bash
> {…}表示将大括号中的命令作为一个组执行。例:
$ false || { echo "We Failed"; exit 1; } We Failed
More generally what does the dollar sign stand for?
这意味着在给定的上下文中意味着什么。