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