标签:linux
一、bash编程入门
编程语言:
编译型语言:编译器 c,c++
解释型语言:解释器
解释器可独立运行
变量:保持数据的载体,命令的内存空间
本地变量:
环境变量
局部变量:
位置参数变量:$1,$2、、、,
特殊变量:
$0 当前脚本的名字
shell脚本:shebang
#!/bin/bash #解释此脚本的shell路径,内核调用对应的解释器来解释脚本
#Description:
#Version:
#Author:
#License:
#Datetime:
脚本文件,其它以#开头的行均为注释行,将会被解释器忽略
bash脚本:内核会启动一个专门的shell进程来运行程序文件,脚本运行借宿,此shell进程也即终止
运行脚本:
1、给脚本执行权限,而后之地那个节本路径运行
内核会通过读取脚本文件第一行来判断启动什么解释器来运行此脚本
2、显示给定解释器来运行
bash命令能检查脚本语法错误:
-n 注意:不是命令语法错误
-x 调试运行 显示运行过程
二、循环执行
bash中的循环控制语句:for,while,until
for循环:
语法:
for 变量名 in 列表;do
循环体
done
运行特性:
第一遍:将列表中的第一个元素赋值“变量名”定义的变量,而后执行完成循环体;
第二遍:、、、直到元素遍历结束,循环退出
列表的生成方式:
1、直接列出 如: stu100 stu101 stu102 或{stu100,stu101,stu102}
2、生成整数列表 如:{start_num..end_num} 例:{1..10} 特定格式,表示1到10
seq LAST
seq FIRST LAST
seq FIRST STEP LAST
注意:seq是命令,要使用命令引用$()
3、用命令的执行结果生存
1、添加10个用户:stu100-stu109,密码同用户名
[root@localhost script]# cat useradd.sh #!/bin/bash for username in {stu130,stu131,stu132};do useradd $username echo "$username"|passwd --stdin $username done [root@localhost script]# bash useradd.sh Changing password for user stu130. passwd: all authentication tokens updated successfully. Changing password for user stu131. passwd: all authentication tokens updated successfully. Changing password for user stu132. passwd: all authentication tokens updated successfully.
[root@localhost script]# cat 2useradd.sh #!/bin/bash for i in {1..10};do useradd user$i echo "user$i"|passwd --stdin user$i done [root@localhost script]# [root@localhost script]# bash 2useradd.sh Changing password for user user1. passwd: all authentication tokens updated successfully. Changing password for user user2. passwd: all authentication tokens updated successfully. Changing password for user user3. passwd: all authentication tokens updated successfully. Changing password for user user4. passwd: all authentication tokens updated successfully. Changing password for user user5. passwd: all authentication tokens updated successfully. Changing password for user user6. passwd: all authentication tokens updated successfully. Changing password for user user7. passwd: all authentication tokens updated successfully. Changing password for user user8. passwd: all authentication tokens updated successfully. Changing password for user user9. passwd: all authentication tokens updated successfully. Changing password for user user10. passwd: all authentication tokens updated successfully. [root@localhost script]#
标签:linux
原文地址:http://xiexiaojun.blog.51cto.com/2305291/1688167