hello world实例
vim hello.sh(shell脚本文件一般都是.sh结尾)
#!/bin/bash(开头,指定解析器)
echo "hello world!"
执行方式:
1、bash/sh 脚本文件的绝对路径/相对路径
2、直接输入脚本文件的绝对路径/相对路径(要确保脚本文件有写权限)
3、scource/. 脚本文件的绝对路径/相对路径
—————————1、2 父子shell嵌套执行 3、直接在父shell下执行—————————
变量:1.全局变量 2.局部变量
1.系统预定义变量 2.用户自定义变量
1.常用系统变量
$HOME、$PWD(当前工作目录)、$SHELL(使用的shell解析器)、$USER
2.查看环境变量:echo $..
打印全部系统全局环境变量:env、printenv
查看全部环境变量:set
3.用户自定义变量
局部变量:直接赋值——例:a=1
全局变量:先生成局部变量,之后export升级为全局变量。
设置只读变量:readonly a=1
撤销变量:unset var_name(只读变量不能被unset)
4.特殊变量
(1)$n(位置参数)——(1,2..9,{10},....{n})->$0是命令的位置
#!/bin/bash
hello $1;
执行:
scripts_name var
结果:
hello 董文
(2)$#:获取输入参数的个数
(3)$*、$@:获取当前命令行的所有参数
$*: 把所有参数看成整体
$@: 把参数看成一个集合
(4)$?:返回最后一次执行的命令的返回状态,如果为0,证明上个命令正确执行;如果非0,则不正确