Shell 三目运算(详细案例)

简介: Shell 三目运算(详细案例)
  • 在其他语法中常见的三目运算方式:
表达式 ? 表达式 : 表达式 ;
  • shell 中也有类似的方式:
command1 && command2 || command3
  • 如果 command 是一连串的组合,那么可以使用 { }commands 括起来。注意:代码块若用在函数中, { } 最后一个必须是 ;
command1 && { command2_1; command2_2; command2_3; } || { command3_1; command3_3; command3_3; }
  • 举例
#!/bin/bash
res="mp-weixin"
iswx=$([[ $res =~ "weixin" ]] && echo 1 || echo 0)
echo "$iswx"
# fileName 文件不存在,则退出,就可以按照下面方式执行
[ -e $fileName ] || { echo -e "fileName Not existed!"; exit 1; }
#也或者可以增加一些 log 打印信息
[ -e $fileName ] && echo -e "$fileName existed" || { echo -e "$fileName Not existed!"; exit 1; }
#多个命令集合的组合
[ -e $fileName ] && echo -e "$fileName existed"; ehco -e "Other Necessary Information" || { echo -e "$fileName Not existed!"; exit 1; }
[ -e $fileName ] && { echo -e "$fileName existed"; ehco -e "Other Necessary Information"; } || { echo -e "$fileName Not existed!"; exit 1; }
#读取IP地址,若为空,则使用默认IP,否则使用新的IP地址
read -p "Please input Management IP (Default is $DEFAULT_IP): " MGMT_IP 
[[ -z $MGMT_IP ]] && { MGMT_IP=$DEFAULT_IP; echo -e "Using default IP $MGMT_IP\n" ;} || DEFAULT_IP=$MGMT_IP
相关文章
|
Shell Linux C++
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
Linux C/C++ 开发(学习笔记二):Shell脚本编程案例
373 0
|
Shell 开发工具 C语言
2.shell脚本基本操作及案例
2.shell脚本基本操作及案例
227 0
|
分布式计算 Hadoop Java
17 案例:开发shell采集脚本
17 案例:开发shell采集脚本
291 0
|
人工智能 监控 Shell
常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)
这篇文章提供了55个常用的Linux Shell脚本实例,涵盖基础案例、文件操作、实用工具、图形化界面及sed、gawk的使用。
4248 2
|
网络协议 关系型数据库 MySQL
Shell 脚本案例
Shell 脚本案例
179 8
|
Shell Linux Perl
Shell基础学习---3、Read读取控制台输入、函数、综合应用案例:归档文件、正则表达式入门(第二天学习)
Shell基础学习---3、Read读取控制台输入、函数、综合应用案例:归档文件、正则表达式入门
329 1
|
关系型数据库 MySQL Shell
shell编程经典案例,建议收藏
shell编程经典案例,建议收藏
405 1
|
Shell
Shell 三目运算(详细案例)
Shell 三目运算(详细案例)
353 1
|
Shell Linux 测试技术
一个案例学习bat和shell脚本的编写
一个案例学习bat和shell脚本的编写
362 0
|
9月前
|
存储 安全 Unix
七、Linux Shell 与脚本基础
别再一遍遍地敲重复的命令了,把它们写进Shell脚本,就能一键搞定。脚本本质上就是个存着一堆命令的文本文件,但要让它“活”起来,有几个关键点:文件开头最好用#!/usr/bin/env bash来指定解释器,并用chmod +x给它执行权限。执行时也有讲究:./script.sh是在一个新“房间”(子Shell)里跑,不影响你;而source script.sh是在当前“房间”里跑,适合用来加载环境变量和配置文件。
842 9