day7
标准输入的文件描述符为0
标准输出的文件描述符为1
标准错误输出的文件描述符为2
【 > 】重定向符号 a>b 把a的输出结果输入到b
shell就是一个命令解释器,它为用户提供了一个向linux内核发送请求以便运行程序界面系统级程序
目前流行的几种shell:ash,bash(Linux下的shell类型),ksh,csh,zsh等
#echo $SHELL
此条命令用来查看SHELL类型
(echo 是输出)
管道pipe
command|command2[|command3…]
将一个程序的输出送到另一个程序的输入
command|command2[|@command3…]
将标准错误输出到管道
shell常用的环境变量:
1、HOME:用来保存注册目录的完全路径名
2、PATH:用于保存用冒号分隔的目录路径名,shell 将按PATH变量给出的顺序搜索这些目录,找到的第一个命令名称一致的可执行文件将被执行
3、TERM:终端的类型
4、UID:当前用户的标识符
5、PWD:当前工作目录的绝对路径名
shell的语法
主要由开头部分、注释部分以及语句执行部分组成
开头:#! /bin/bash
#! 用它来告诉系统它后面的参数是用来执行该文件的程序,在这个例子中使用bin/bash来执行程序
#是注释
shell变量:
1、本地变量
2、环境变量
3、特殊变量
调用变量时则应在变量名前加一个美元符号($)
使用set命令可以查看所有的本地变量和环境变量
本地变量又叫用户自定义变量,是在当前shell环境,当前进程内有效的变量,当用户注销,或者启用于shell,子进程时该变量不起作用
.
.
定义本地变量
1、在bash shell环境下,定义本地变量的设置格式如下
变量名=变量值(若等号两边有空格,则必须使用引号括起来)
Attention
空格不是说等号相邻两边的,等号两边不可有空格。
而是指内容物若有空格。例如hello与world中间有空格,则hello world用引号括起
2、变量设置的规定
1)变量名称只能是英文字母、下划线、与数字,但数字不能是开头字符
2)若有空格,可以使用双引号和单引号将变量内容连接起来
3)用户也可以在命令行上同时定义多个变量赋值,赋值语句之间要用空格分开
#x-4 y-5
1 readonly命令
有时需要在说明一个变量并对他设置为一个特定值后就不需要它再改变时,可以用readonly保证一个变量的只读性
2 read
语法:read -pt [变量名]
功能:读取来自键盘输入的变量
可选项
-p :后面可以接提示信息
-t:后面可以接等待的秒数,为了防止一直等待用户
.
.
eg:让用户通过键盘输入内容,将改内容改成atest变量
read atest
提示用户三十秒内输入自己的名字,将该输入字符串做成name变量