shell编程入门

shell介绍

1、shell种类

可以使用 cat /etc/shells 查看当前系统可以使用的shell

2、从用户的角度来看SHELL的类型
1>登陆式shell: 可以正常通过某终端登陆
su - USERNAME
su -l USERNAME
2>非登陆式shell:
su USERNAME  /* su - 完全切换,su 不读取环境设定 */

3、bash的配置文件
全局配置: /etc/profile, /etc/profile.d/*.sh, /etc/bashrc
个人配置:~/.bash_profile, ~/.bashrc
profile类文件:设定环境变量、运行脚本或命令
bashrc类文件:设定本地变量、定义命令别名

登陆式shell如何读取配置文件:/etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc -->/etc/bashrc
非登陆式shell如何读取配置文件:~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

编程语言 —> 编译器or解释器 —>机器语言


变量:命名的内存空间

类型:事先确定数据的存储格式和长度

1、字符型

2、数值型

整形

浮点型

3、布尔型


脚本:

命令的堆砌,按实际需要结合命令流程控制机制实现的源程序



bash变量类型:${}引用变量

环境变量:整个bash进程及其子进程

export VARNAME=VALUE


本地变量:整个bash进程

[set] VARNAME=VALUE


局部变量:代码块

local VARNAME=VALUE


位置变量:$1, $2,…

shift [n]:轮替,n默认为1


特殊变量:

$?:上个命令的执行返回状态

$#:参数的个数

$*:参数列表

$@:参数列表


变量撤销:unset VARNAME


查看当前shell中的变量:

set—>环境变量和本地变量

printenv/export查看环境变量


shell中如何进行算术运算

1、let算术运算表达式

2、$[算术运算表达式]

3、$((算术运算表达式))

4、expr 算术运算表达式,表达式中各操作数及运算符之间要有空格,而且要使用命令引用c=`expr $A + $B`


测试方法:

[ expression  ]  //命令测试法

[[ expression ]]  //关键字测试法

test expression


bash中常见的条件测试有三种:

1、整数测试:

-gt

-le

...

2、文件测试:

-e FILE:测试文件是否存在

-f FILE:测试文件是否为普通文件

-d FILE:测试指定的路径是否为目录

-r FILE:测试当前用户对该文件是否有读权限

-w FILE:测试当前用户对该文件是否有写权限

-x FILE:测试当前用户对该文件是否有执行权限

...

3、字符串测试:

==

!=

-n string:测试指定字符串是否为空

-s string:测试指定的字符串是否非空

...


循环:进入条件,退出条件

for

while

until


###生成列表###

1、{起始数..结束数}

2、seq [起始数]  [步长] 结束数

...


declare -i 声明为整数

-x声明为环境变量


for 变量 in 列表; do

循环体

done



bash -n:测试是否存在语法错误

bash -x:调试方式运行脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值