【第六节】
----复习:管道符等
------------开始:4.2章
Shell脚本:3个关键
1、脚本的声明:#!/bin/bash
2、脚本的注释:#
3、脚本的命令:command
---------------------------------接受用户输入的参数:
命令的能力(或写脚本时要能接受用户输入的参数):1.接受用户输入的参数;2.判断并执行
shell内置的有变量:$1,$2,$3,$4,$5,
6
,
−
−
−
−
−
−
指
的
是
第
6,------指的是第
6,−−−−−−指的是第个位置的参数,shell可以接收
$0----代表名称的本身—脚本名
$#-----接收到参数的总个数
$------代表接收到的参数分别为什么内容
---------------------------------判断:(Shell的变量需要手动分类型来判断)
文件测试:一般、目录、设备、块、链接、管道等文件的类型{
需要判断(一般只用后两个就可以了)1:是否存在;2:是什么类型的文件;3:是否可以写入-------格式:[ -e /dev/fstab ]—文件是否存在; [ -w /etc/fstab ]-----文件是否可以写入; echo KaTeX parse error: Expected 'EOF', got '}' at position 85: … }̲ 逻辑操作符:&&:与(成功-…USER=root ]
整数比较: xxx -eq xx -gt(>)
[ free -m | grep Mem: | awk '{print $4}'
-lt 1024 ] && echo “xxxx” || echo “yyy”
字符串比较:[ -z $PRICE ]—对这个变量进行判断,看其是否已定义(echo $?)
--------------------------------------------------------------------流程控制语句
if—条件测试语句(单分支语句;双分支;多分支)
开始符: if
条件成立: then
条件不成立: else if
条件成立: then
条件还不成立: else / else if / fi
结尾符: fi
if [ ! -d /dev/mulubucunzai ]
then mkdir /dev/xxxx
fi
---------------------------read命令用来读取用户输入的值
baread -p "Enter: " GRADE--------------(GRADE----将用户的值赋值到该变量)
ping -c 3 -i 0.2 -W 3 $1 &> /dev/null
if [ $? -eq 0 ]
then
echo "$1 is online"
else if
echo "$1 is off-line"
fi
-----------------------------------------------
for 循环语句
read -p " Enter: " PASSWD
for USER in cat users.txt
do
id $UNAME &> /dev/null
if [
?
−
e
q
0
]
t
h
e
n
e
c
h
o
"
? -eq 0 ] then echo "
?−eq0]thenecho"UANME is exist"
else
useradd $UNAME &> /dev/null
echo $PASSWD | passwd --stdin $UANME &> /dev/null
fi
done
while 循环语句
case 判断语句
** 空余的内容我会之后补充,如果想要完整详细的笔记,可以关注私信我哦。