初识Bash
操作系统是一组调度管理软件,控制计算机所有活动,管理硬件设备。操作系统内核和模块提供相关API和lib由外部调用。
出于安全性考虑,用户不能直接调用kernel的相关接口,而是通过shell工具进行交换。用户在shell中输入相关指令,shell根据指令
调用系统内核的相关功能。
shell最早出现在unix系统中,如sh,ksh,csh...,1987年bash出现,borne-again shell 并广为使用,目前大部分linux发布版本都
支持bash,bash内置许多功能如echo cd kill...,内置指令帮助用 help ie help cd
bash有点
1、记录历史指令,通过上下键切换
2、支持tab键,自动补充
3、支持shell脚本
4、支持别名alias 如alias lm='ls -al'
5、支持通配符
Path 设置添加搜索目录
PATH=$PATH:/dir/subdir/
history历史命令 ,默认保存1000个 !20查看低20个历史命令,!!上个历史命令
bash 文件的第一行#!指示当前脚本有哪个sh执行
执行shell的方式,给脚本赋予执行权限 1、./xx.sh 2、当前用户没有执行脚本的权限时用bash ./xx.sh 3、. ./xx.sh在当前sh进程下执行该脚本
注意,前两种执行方式都是打开一个子shell并执行,后一种方式是在当前shell进程中执行脚本程序
shell程序获取调用时传入的参数方式是$开头,$1,$2,$3... $#是获取参数个数,$!获取shell执行的返回值 成功为0,失败为非0,$$可以获取当前shell执行进程的进程号
shell的逻辑控制
判断:
[] && || 参数 -r -x -w -b -l -d -c -f
if [注意空格];then#then换行的话不需要分号
fi
case param in
'xx')
do something
;;
'bb')
do something
;;
*)
do something
;;
esac
循环
while []
do
done
util
do
done
for xx in xxx
do
done
for(i=0;i<j;i++)
do
done