脚本的运行
这里以red系列的==bash/sh==为例
- 赋权:需要执行的权限,可以用chmod +x添加
- sh start.sh(文件名)
- ./start.sh(文件名)
变量的作用域
脚本中的变量只作用于脚本当中。set设置的变量,退出系统后回收。
变量的定义
- 由数字与字母,下划线组成
- 不能以数字或特殊字符开头
变量的赋值及引号
- 通过赋值符号=定义 filepath = "/home/shell"
- data = '单引号' 字符串类型,不会解析任何字符
- str = "双引号" 字符串类型,内部会解析$和转义字符
- 反引号`date`执行系统命令
变量的引用
使用美元符号$加变量名
name = "pangmao"
echo ${name}
当变量附近没有其他字符时,可通过$name调用变量
环境变量
环境变量的定义:
环境变量一般是指操作系统中用来指定操作系统运行的环境。如PTAH,USER,PWD
常见的环境变量
PATH:系统路径
HOME:当前用户家目录
HISTSIZE:保存历史命令记录的条数
LOGNAME: 当前用户登录名
HOATNAME:主机名称
SHELL:当前用户使用的shell
MAIL:当前用户邮件存放目录
查看环境变量
- env:显示所有环境变量
- set: 查看所有系统变量
- echo $PATH :显示某一个环境变量的值
预定义变量
变量名 | 说明 |
---|---|
$# | 传递到脚本的参数个数 |
$* | 以一个单字符串显示所有向脚本传递的参数。如"$n"的形式输出所有参数。 |
$@ | 与$*相同,但是使用时加引号,并在引号中返回每个参数。如"$1" |
$$ | 脚本运行的当前进程🆔号 |
$? | 显示命令的最后退出状态。0代表没有错误 |
$! | 后台运行的最后一个进程号🆔 |
变量的输入和输出
echo:
-e 转义所有的转义字符。等同于python中的原始字符r
-n 忽略结尾的换行
printf:
printf输出默认没有换行。可通过\n换行
支持%s,%d等格式化输出
read:
读取标准输入的下一行。
read + 变量名,通过变量名接收下一行的输入。
标准输入输出和错误输出:
标准输入(stdin)是命令数据的输入,代码为0,使用< or <<,默认是键盘
标准输出(stout)是命令执行成功返回的的结果,代码为1,使用> or >>,默认是屏幕
标准错误输出(stderr)是命令执行失败返回的错误信息,代码为2,使用2> or 2>>

这是 ls : 标准输入
ls命令显示的文件名就是标准输出

-bash: 少杰真帅: command not found这句话就是错误输出。(ps:不要在意细节)

> 重定向到某个文件,这里是将ll的标准输出重定向到ll.txt

>> 重定向追加到某个文件

<:指定输入数据的来源。
其他指令如下,用法如上面雷同。
1>: 将正确的内容覆盖输出到指定的文件。
1>>: 将正确的内容追加到指定的文件。
2>: 将错误信息覆盖输出到指定的文件。
2>>: 将错误信息追加输出到指定的文件。
网友评论