shell变量,shell脚本基础知识
shell变量分类:环境变量,本地变量,局部变量,位置变量,特殊变量
1.shell本地变量
(1) 变量赋值
name="value"
value
字符串 name="string"
变量引用 name="$name"
命令引用 name=`COMMAND`, name=$(COMMAND)
(2) 变量引用
$name, %{name}
" " : 若引用,其中的变量引用会替换为变量值
‘ ‘ : 强引用,其中的变量引用不会替换为其变量值,保持原字符串
`command`, $(command):命令引用
(3) 删除本地变量
unset name
(4) 只读变量, 设定后不可以改变其值,也不可以销毁,只有此shell进程结束后才结束其生命
readonly name
declare -r name
2.shell 环境变量
(1) 变量赋值
export name=VALUE
declare -x name=VALUE
本地变量升级为环境变量 expoert name, declaere -x name
(2) 显示环境变量
export
env
printenv
3. 删除变量
unset name
4. 显示所有变量
set : Set or unset values of shell options and positional parameters.
5. 位置变量
在脚本中调用通过命令行传递给脚本的参数
$1, $2 ... :分别对应命令行的第1,第2...个参数
$0 : 命令本身
$* : 传递给脚本的所有参数,所有参数作为一个整体
[email protected]:传递给脚本的所有参数,各参数是独立的
$#:传递个脚本的参数个数
shift [n] : 踢出n个参数
6.逻辑运算:
&& : 与
|| : 或
! : 非
短路运算:
a&&b : 若a为false, 则不执行b
a||b : 若啊为true, 则不执行b
7. shell 编程特性:面向过程(顺序执行,循环执行,选择执行), 解释执行
8. 脚本首行指明执行该脚本使用的解释器
#!/bin/bash
#!/usr/bin/python
#!/usr/bin/perl
9. pstree : display a tree of process : 显示进程树