linux学习笔记 下载本文

3.存储变量 变量:

局部变量、环境变量(export、declare -x) 环境变量:

用于储存关于shell会话和工作环境的信息,分全局变量和局部变量,全局变量在shell会话和改shell产生的任何子进程中都可见;局部变量值在创建它们的shell中可见,查看全局变量env或printfenv,查看所有变量命令set设置环境变量:

设置PSTH环境变量:PATH=$PATH:目录(在原来基础上添加一个路径 只读变量、整型变量

例:declare -i x; x=\打印0 位置参量($0,$1,...,$*,$@,$#,$$,$?) 变量的间接引用(eval, ${!str})

例:name=\打印hello 命令替换(`cmd`、$(cmd))

整数运算

declare 定义的整型变量可以直接进行运算,否则需用let 命令 或$[...]、$((...)) 进行整数运算。 4.数学计算 echo命令:

功能说明:显示文字。

语法:echo [-ne][字符串] 或echo [--help][--version] 补充说明:echo 会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。

-n 不进行换行

-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出\\n 换行\\b 空格... -n 不要在最后自动换行

-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一

般文字输出: \\a 发出警告声; \\b 删除前一个字符; \\c 最后不加上换行符号;

\\f 换行但光标仍旧停留在原来的位置; \\n 换行且光标移至行首; \\r 光标移至行首,但不换行; \\t 插入tab; \\v 与\\f 相同; \\\\ 插入\\字符;

\\nnn 插入nnn(八进制)所代表的ASCII 字符; --help 显示帮助 --version 显示版本信息

expr命令:

生成随机数的特殊变量:

echo $RANDOM 范围是: [0, 32767] expr:通用的表达式计算命令

注意:表达式中参数与操作符必须以空格分开,表达式中的运算可以是算术运算,比较运算,字符串运算和逻辑运算 1.expr 命令一般用于整数值,但也可用于字符串。 如: expr 5 % 3

expr 5 \\* 3 # 乘法符号必须被转义 2.expr 也是一个手工命令行计数器。如: $expr 10 + 10 打印:20 $expr 30 / 3 打印:10 $expr 30 / 3 / 2 打印: 5

注意:使用乘号时,必须用反斜线屏蔽其特定含义。因为shell 可能会误解显示星号的意义(shell 中的反斜杠“\\”,有大部分是这种转意的意思)。如:expr 30 \\* 3 打印:90

3.数值测试。可以用expr 测试一个数。如果试图计算非整数,将返回错误。如: $rr=1.1

$expr $rr + 1 以上两句将打印:expr: non-numeric argument $rr=2

$expr $rr + 1 以上两句将打印:3

这里需要将一个值赋予变量(不管其内容如何),进行数值运算,并将输出导入dev/null,然后测试最后命令状态,如果为0,证明这是一个数,其他则表明为非数值。