shell入门(2)
变量的赋值方式
1.直接赋值
name=zhangsan 等号两边不能有空格
2.read命令
#从键盘读入变量(管理员手动输入)
read -p "请输入用户名:" user
echo $user
3.命令行参数
$1 $2 $3 $4 $5 $6 $7 $8 $9)
name=$1
echo $name
在执行文件之后,在文件名加参数
4.命令
name=`whoami`
echo $name
$@和 $*的区别
被引用时,$* 将所有位置参数作为一个整体, $@将""里的位置参数作为一个整体,其他参数用空格分开
当 $* 和 $@没有被引用的时候,没有区别
算数运算命令有几种?
1.(())
eg:a=$((1+2))
echo $a
[]
eg:b=$[1+2]
echo $b
let
let r=1+2
echo $r
expr
expr 1 + 2
或者:c=`expr 1 \* 3`
echo $c
declare
declare -i d=1+2
echo $d
定义变量url=https://blog.youkuaiyun.com/weixin_45029822/article/details/103568815
截取网站访问的协议
url=https://blog.csdn.net/weixin_45029822/article/details/103568815
m=${url%%/*}
echo $m
截取网站访问的账号信息
url=https://blog.csdn.net/weixin_45029822/article/details/103568815
n=${url##*/}
echo $n
写一个脚本要求传入用户参数,通过脚本判断该用户用户是否存在,如果存在这显示用户已存在,如果不存在则创建该用户并给该用户设置密码为redhat,同时在终端输出用户成功创建。
#!/bin/bash
read -p "请输入用户:" user
id $user &> /dev/null && echo 用户已存在
! id $user &> /dev/null && useradd $user && echo redhat | passwd --stdin $user &> /dev/null && echo 用户成功创建