cut -d "=" -f 2
env
then
test
#!/bin/bash
#用env结合cut命令查找当前登录用户,并把当前用户赋值给test变量。
test=$( env | grep USER | cut -d "=" -f 2 )
#用if判断语句来判断变量test的值是否是root用户,因为是字符串,所以需要用==来判断。
if [ "$test" == "root" ];then
#如果判断为真,则输出以下语句,说明当前登录用户是root.
echo "this is user is root."
#如果判断为假,则输出以下语句,说明当前登录用户不是root.
else
echo "this is user isn't root."
fi
env查看环境变量,可以查看当前登录用户。
whoami可以查看当前登录用户,但是不准,如果不是用-来切换用户的话。
单分支if条件语句
if [ 条件判断式 ];then
程序
fi
或者
if [ 条件判断式 ]
then
程序
fi
单分支条件语句需要注意几个点
if语句使用fi结尾,和一般语言使用大括号结尾不同
[条件判断式]就是使用test命令判断,所以中括号和条件判断式之间必须有空格
then后面跟符合条件之后执行的程序,可以放在[]之后,用";"分割。也可以换行写入,就不需要";"了
判断登陆的用户命令
whoami
env #USER=root
env | grep USER | cut -d "=" -f 2 #筛选USER,以分隔符"="进行分割,提取第二个字段
例子1:判断登陆的用户是否root
vi if1.sh
#!/bin/bash
test=$(env | grep "USER" | cut -d "=" -f 2)
#echo $test
if [ "$test" == root ]
then
echo "Current user is root."
fi
单分支if条件判断语句结构
#!/bin/bash
test=$(env | grep "USER" | cut -d "=" -f 2)
if [ "$test" == "root" ]
then
echo "Current user id root."
fi
例子:
#/bin/bash
test=$(env | grep USER | cut -d "=" f 2) //先执行env命令,然后用grep从中找到USER,在列查询用=作为分隔符,选取第二列,把这个值赋值给test
if [ "$test"=="root" ]
then
echo "dang qian shi root"
//判断test值是否和root相等,相等则输出“...”
fi
重点:获取如何获取当前登录信息
注意:空格时时刻刻要注意
在“env”环境变量中定位当前用户是否为“root”
#env | grep "USER" | cut -d "=" -f 2
#!/bin/bash
test=$(env | grep "USER" | cut -d "=" -f 2)
if [ "$test" == "root" ]
then
echo "Current user id root."
fi
单分支条件语句
判断登录用户是否root
单分支if条件语句
单分支if条件语句
if语句语法
if [判断条件];then
process
fi
或
if [判断条件]
then
process
fi
单分支条件语句注意点
if语句使用fi结尾,和一般语音使用大括号结尾不同。
[条件判断式]就是使用test命令判断,所以中括号和条件判断式之间必须有空格。
then后面跟符合条件之后执行的程序,可以放在[]之后,和“;”分割。也可以换行写入,就不需要“;”了。
#!/bin/bash
#
test=$(env | grep USER | cut -d "=" -f 2)
if [ "$test" == "root" ]
then
echo "this user is root."
fi
if语句例子1:判断登录用户
if语句例子1:判断登录用户
单分支语句的注意点
单分支if条件语句
单分支if条件语句
判断登陆的用户是否为root