Skip to content

入门

一个简单的shell命令,例如, echo a b c 由命令本身后跟参数(由空格分隔)组成。

更复杂的 Shell 命令由以各种方式排列在一起的简单命令组成:在管道中(一个命令的输出成为第二个命令的输入),在循环或条件构造中,或在其他一些分组中。

简单命令

简单命令是(可选的)一系列变量赋值, 紧接着是空白字符分隔的词和重定向符号, 最后以一个控制操作符结束. 第一个词指明了要执行的命令, 它被作为第 0 个参数.
其余词被作为这个命令的参数.

这个定义可以这样来理解:

1、 可以有变量赋值,例如

#!/usr/bin/env bash

a=10 b=10 export a b

2、 "词"是以空白字符分隔开的,空白字符包括制表符(tab)和空格,例如:

ls /tmp

就是两个词,一个 ls ,一个 /tmp

3、可以出现重定向符号,重定向符号是 >< ,例如:

echo “hello world”> /tmp/log

4、 简单命令结束于控制操作符,控制操作符包括:

||
&
&&
;
;;
( )
|
<newline>

例如,用户输入:

ls /tmp

用户最后敲的回车键就是控制操作符 newline ,表示要结束这个简单命令。

如果用户输入:

echo "100" ; echo "200"

那么这是两个简单命令,第一个结束于";",第二个结束于newline。

5、 简单命令的第一个词是要执行的命令,其余的词都是这个命令的参数,例如:

shell
echo "hello world" echo

第一个 echo 是命令,第二个词 "hello world" 是参数1,第三个词 echo 是参数2,而不再作为一个命令了。

简单命令是 shell 语法中最小的命令,通过简单命令的组合,又可以得到管道命令和列表命令。

内容目录

安装

Shell 入门

扩展