代码拉取完成,页面将自动刷新
同步操作将从 sunnyandgood/BigData 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
if 语句允许使用逻辑组合进行测试,有两种方式如下:
命令格式:
if [ 表达式 1 ] && [ 表达式 2 ]
then
语句块
else
语句块
fi
if [ 表达式 1 ] || [ 表达式 2 ]
then
语句块
else
语句块
fi
第一个布尔表达式使用的 and 运算符,当 and 运算符两边的表达式都成立时,执行 then后面的语句块,否则执行 else 后面的语句块。
第二个表达式使用的是 or 运算符,当 or运算符两边的表达式有一个成立时,执行 then 后面的语句块,否则执行 else 后面的额语句块。下面通过例子说明。
&&运算符例子:
#!/bin/bash
file=/home/hadoop01/bash01/file04
# 判断当前用户是否是 hadoop01,文件存在并且可写
# 当三个表达式同时成立时执行 then 后面的语句块
if [ "$USER" = "hadoop01" ] && [ -f "$file" ] && [ -r "$file" ]
then
cat $file
else
echo "$file is not exist!"
fi
修改上面的脚本,使用-a 代替&&运算符,这样只需要一个方括号并且功能相同。例子:
#!/bin/bash
file=/home/hadoop01/bash01/file04
# 判断当前用户是否是 hadoop01,文件存在并且可写
# 当三个表达式同时成立时执行 then 后面的语句块
if [ "$USER" = "hadoop01" -a -f "$file" -a -r "$file" ]
then
cat $file
else
echo "$file is not exist!"
fi
||运算符例子:举例说明逻辑或的使用方法,只要||运算符两侧的表达式其中一个成立时,执行 then 后面的语句块。例子:
#!/bin/bash
file=/home/hadoop01/bash01
# 判断用户是否是 hadoop01 或者 root
if [ "$USER" = "hadoop01" ] || [ "$USER" = "root" ]
then
cd $file
# 判断日志文件是否存在
if [ -f "tmp/logs.log" ]
then
# 删除日志文件
rm tmp/logs.log
fi
# 创建一个空的日志文件
touch tmp/logs.log
date >> tmp/logs.log
else
echo "You are not have permission!"
fi
修改上面的脚本,可以使用-o 代替||运算符,同样可以只使用一个方括号并且实现的功能相同。
#!/bin/bash
file=/home/hadoop01/bash01hadoop01
# 判断用户是否是 hadoop01 或者 root
if [ "$USER" = "hadoop01" -o "$USER" = "root" ]
then
cd $file
# 判断日志文件是否存在
if [ -f "tmp/logs.log" ]
then
# 删除日志文件
rm tmp/logs.log
fi
# 创建一个空的日志文件
touch tmp/logs.log
date >> tmp/logs.log
else
echo "You are not have permission!"
fi
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。