LinuxShell脚本编程基础4-条件测试与条件判断
1、条件测试(test,[])
#! /bin/bash
echo "请输入登陆的用户名:"
read name1
if test "$name1" = "Jack"
then
echo "登陆成功"
else
echo "登陆失败"
fi
=================
注意:
if then else fi 的格式用法, then 要换一行来写
test 测试表达式, 返回 要么是 ture 或者 false
还有另外一种 使用中括号 []
if [ "$name1" = "Jack" ] 和 if test "$name1" = "Jack" 等价的
使用的时候一定要注意空格
if [ "$name1"="Jack" ] 和 if [ "$name1" = "Jack" ] 是不一样的
2、条件判断(if..then..fi)
AND,逻辑与(&&) 我们使用时候缩写为 -a
OR,逻辑或(||) 缩写为 -o
加多一个条件, 当用户名为 "Jack" 或者 "Kelly" 都成功登陆,只满足其中一个条件即可
if [ "$name1" = "Jack" -o "$name1" = "Kelly" ]
或者
if test "$name1" = "Jack" -o "$name1" = "Kelly"
==============
接下来使用 AND -a 的用法, 要同时满足条件才行
echo "请输入登陆的用户名:"
read name1
echo "请输入密码:"
read password1
if [ "$name1" = "Jack" -a "$password1" = "1234" ]
then
echo "登陆成功"
else
echo "登陆失败,请检查用户名或密码"
fi
LinuxShell脚本编程基础4-条件测试与条件判断的更多相关文章
- shell脚本编程基础之文件测试
文件测试判断条件 -e FILE:测试文件是否存在 -f FILE:测试文件是否为普通文件 -d FILE:测试指定路径是否为目录 -r FILE:测试当前用户对指定文件是否有读权限 -w FILE: ...
- LinuxShell脚本编程基础5--数值,字符串,文件状态测试,((..))和[[..]]的使用
1.数值比较 ! /bin/bash echo "enter a score:" read num1 ] then echo "Very Good" elif ...
- LinuxShell脚本编程基础2-变量与数值运算、父shell和子shell
1.变量和数值运算 Shell脚本的变量不需要声明的 对变量赋值有两种方式, 直接用“=” 或者用键盘输入值 #!/bin/bash name1="Jack" echo $name ...
- LinuxShell脚本编程基础1-vi编辑器的使用
1.输入模式与命令模式的切换 按 [Esc]键 切换到 命令模式: 2.保存与退出 :w mytest.txt 保存文件名 :q 退出 :q! 强制退出 :wq 保存并退出 3.插入文本命令 i 在 ...
- SHELL脚本编程基础知识
SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...
- linux基础—课堂随笔_03 SHELL脚本编程基础
shell脚本编程基础 条件选择:if语句 选择执行: 注意:if语句可嵌套 单分支 if(开头)判断条件:then条件为真的分支代码 fi(结尾) 双分支 if(开头)判断条件:then条件为真的分 ...
- Linux shell脚本编程基础之练习篇
shell脚本编程基础之练习篇. 1.编写一个脚本使我们在写一个脚本时自动生成”#!/bin/bash”这一行和注释信息. #!/bin/bash ] then echo "请输入一个参数& ...
- shell脚本进阶之条件测试与条件语句
接着上篇博客,今天整理一下关于条件测试和条件语句方面的知识. shell脚本进阶之条件测试 在编写shell脚本时,经常需要对一些条件进行判断,可以使用测试命令test辅助完成测试过程.t ...
- Linux-Shell脚本编程-学习-1-Linux基本命令
在学习Linux-Shell脚本编程之前,我们需要学习一定的Linux基本命令,不然在后面学习Shell脚本编程的的时候,我们就呵呵了. 我学习所用的系统是Ubuntu 16.04版本 也没有什么规则 ...
随机推荐
- LightOJ 1098(均值不等式,整除分块玄学优化)
We all know that any integer number n is divisible by 1 and n. That is why these two numbers are not ...
- linux安装memcache及memcache扩展
一.安装libevent# wget http://www.monkey.org/~provos/libevent-2.0.12-stable.tar.gz# tar zxf libevent-2.0 ...
- Android Studio3.2新建项目gradle read time out
试验了好几个小时,看了很多方法,都不管用,运用一下设置好了,记录一下 1. 2.在项目的build.gradle中添加 mavenCentral()maven { url 'https://maven ...
- spark 编译命令
mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -DskipTests clean package
- 学习笔记之Struts2—工作原理图
本文以Struts2的官方工作原理图作为主线讲解(参考部分书籍与视频) 1.初始概念 struts2是web.xml进行配置的一个过滤器,当web项目启动的时候,这个过滤器就会生效. 2.web.xm ...
- Sql2012 AlwaysOn
准备: 两台宿主机,两台虚拟机,一根交叉线 系统都是windows server 2012 步骤 1.两台虚拟机均为双网卡 2.配置故障转移群集 3.执行AlwaysOn配置(增加Listen此步骤上 ...
- Windows上编译zlib
把zlib 1.2.8解压到zlib/zlib-1.2.8 在deflate.c文件中把deflate_copyright改成一个static变量. 在zlib目录底下创建并用Visual Studi ...
- OCP题库变更,052新加的考试题及答案整理-22题
22.You are planning a software installation for both Oracle Database 11g Release 1 and Release 2. Yo ...
- css 实现文字图片垂直对齐
给图片使用vertical-align:middle;就可以实现 <!DOCTYPE html> <html lang="en"> <head> ...
- ReactNative之坑:停在gradle一直出点
问题: 初次安装好React Native 环境后,运行项目,会停留在下载 gradle 的界面一直出点 原因: 下载gradle一直不成功 解决方案: 可以根据提示的版本信息,手动下载,放在目录中, ...