sh -c 的必要性

in Shell read (1239)

在 Linux 使用 echo 并配合命令重定向是实现向文件中写入信息的快捷方式。 比如要向 test.asc 文件中随便写入点内容,可以: $ echo "信息" > test.asc 或者 $ echo "信息" >>...

Continue reading

Shell 中 2>&1 中的'&'是什么意思?

in Shell read (1369)

表示重定向的目标不是一个文件,而是一个文件描述符,内置的文件描述符如下 1 => stdout 2 => stderr 0 => stdin 换言之 2>1 代表将 stderr 重定向到当前路径下文件名为 1 的 regular file 中,而 2>&a...

Continue reading

Shell 文件包含 (十)

in Shell read (1162)

像其他语言一样,Shell 也可以包含外部脚本,将外部脚本的内容合并到当前脚本。 Shell 中包含脚本可以使用: . filename 或 source filename 两种方式的效果相同,简单起见,一般使用点号 (.),但是注意点号(.) 和文件名中间有一空格。 sour...

Continue reading

Shell 输入输出重定向 (九)

in Shell read (1158)

Unix 命令默认从标准输入设备 (stdin) 获取输入,将结果输出到标准输出设备 (stdout) 显示。一般情况下,标准输入设备就是键盘,标准输出设备就是终端,即显示器。 输出重定向 命令的输出不仅可以是显示器,还可以很容易的转移向到文件,这被称为输出重定向。 命令输出重定向...

Continue reading

Shell 函数 (八)

in Shell read (1014)

函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高。像其他编程语言一样,Shell 也支持函数。Shell 函数必须先定义后使用。 Shell 函数的定义格式如下: function_name () { list of command...

Continue reading

Shell 循环 (七)

in Shell read (1035)

for 循环 for 循环一般格式为: for 变量 in 列表 do command1 command2 ... commandN done 列表是一组值(数字、字符串等)组成的序列,每个值通过空格分隔。每循环一次,就将列表中的下一个值赋给变量...

Continue reading

Shell 条件语句 (六)

in Shell read (1150)

if else 语句 if 语句通过关系运算符判断表达式的真假来决定执行哪个分支。Shell 有三种 if ... else 语句: if ... fi 语句 if ... else ... fi 语句 if ... elif ... else ... fi 语句...

Continue reading

Shell 数组 (五)

in Shell read (1095)

bash 支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与 C 语言,数组元素的下标由 0 开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于 0。 定义数组 在 Shell 中,用括号来表示数组,数组元素用 “空格” 符号分割开。定义数组的一般形...

Continue reading

Matrix42

Record and Share!