shell编程-条件判断与流程控制
1.条件判断式
按照文件类型进行判断:
两种判断格式:
test -e /root/install.log
[ -e /root/install.log ]
判断命令是否正确执行:
[ -d /root ] && echo "yes" || echo "no"
按文件权限判断:
两个文件之间的比较:
[ /root/stu.txt -ef /tmp/stu.txt]
两个整数之间的比较:
字符串的判断:
a=21,b=56
[ "$a" == "$b" ]
多重条件的判断:
2.流程控制
单分支语句if:
判断登陆用户是否为root:
vim isRoot.sh
#!/bin/bash
test=$(env | grep USER |cut -d "=" -f 2)
if [ "$test" == "root"];then
echo "the user is root"
fi
双分支if语句:
read -t 30 -p "please enter a dir: "dir
if [ -d "$dir" ]
then
echo "is dir"
else
echo "no"
fi
判断Apache是否启动
test=$(ps aux | grep httpd |grep -v grep)
if [ -n "$test" ]
then
echo "$(date) httpd is running"
else
echo "httpd is not running"
services httpd start
fi
多分支if语句:
多分支case语句:
for循环:
cd /root/test/
ls *.tar.gz > ls.log
ls *.tgz >> ls.log
for i in $( cat ls.log )
do
tar -zxf $i & > /dev/null
done
rm -rf ls.log
for i in $(cat /etc/passwd | grep /bin/bash |grep -v root |cut -d ":" -f1)
do
userdel -r $i
done
while循环和until循环:
转载于:https://www.cnblogs.com/Nyan-Workflow-FC/p/5669012.html
shell编程-条件判断与流程控制相关推荐
- Linux疑难杂症解决方案100篇(六)-SHELL编程条件判断和流程控制
今日目标: 熟悉条件判断语句,如判断整数.判断字符串等 熟悉流程控制语句基本语法,如if-else- 一.条件判断语法结构 思考:何为真(true)?何为假(false)? 1. 条件判断语法格式 格 ...
- Shell攻关之条件判断与流程控制
条件判断与流程控制 一.条件判断式语句 1.按照文件类型判断 (1) 常用: -d 文件 判断该文件是否存在,并且是否为目录文件(是目录为真)-e 文件 判断该文件是否存在(存在为真)-f 文件 判断 ...
- Linux【实操篇】—— Shell 编程入门、变量、运算符、条件判断、流程控制
目录 一.Shell 编程入门 1. 认识 Shell 2. Shell 脚本的创建与执行 二.Shell 变量 1. 系统变量和自定义变量 2. 变量的基本规则 3. 设置环境变量 4. 位置参数变 ...
- [Shell]条件判断与流程控制:if, case, for, while, until
[条件判断] 1. 按文件类型进行判断 -b 文件 判断该文件是否存在,并且为块设备文件(是块设备文件为真) -c 文件 判断该文件是否存在,并且为字符设备文件(是字符设备文件为真) -d ...
- Shell程序设计 | 基本语法 :变量、I/O、算术运算、条件判断、流程控制、函数
文章目录 变量 环境变量 位置变量 特殊变量 自定义变量 数组 I/O printf / echo read 算术运算 let expr 条件判断 test 常用判断条件 流程控制 if case f ...
- shell 判断_shell之条件判断和流程控制
上一篇我们讲了基本运算符,和本篇文章密切关联,可以说每一门语言,都少不了流程控制,相信大家在日常的开发中也不陌生,代码中,我们总要写这样那样的判断.其实流程控制的本质是差不多的,只是在语法上稍微有些差 ...
- Linux shell编程(四)流程控制
在Bash Shell中,流程控制命令有两个类:"选择"和"循环".属于"选择"的有:if,case;属于"循环"的有: ...
- shell编程-条件判断
2019独角兽企业重金招聘Python工程师标准>>> 1.按照文件类型进行判断 判断文件是否存在的两种方式: 1.1 使用test进行判断 ###判断文件/root/score.t ...
- linux设置程序循环,linux shell编程学习笔记(7)流程控制之循环结构
2.1.for循环 1)遍历/列表式循环 --根据变量的不同取值,重复执行命令序列 格式: for 变量名 in 值列表 do 命令序列 done 示例:输出在线的主机IP #!/bin/bash ...
- shell 编程条件语句实验
一*,shell 编程条件语句* 要使 Shell 脚本程序具备一定的"智能",面临的第一个问题就是如何区分不同的情况以确定执行何种操作. Shell 环境根据命令执行后的返回状态 ...
最新文章
- Apache Traffic Server 4.2.1/5.3.2上的坑!
- Linux的主要特性
- Nginx反向代理和负载均衡部署指南
- ROS | ROS2安装(Ubuntu 16.04版本:通过Debian包安装)
- 音视频技术开发周刊 | 225
- 帮助你生成响应式布局的CSS模板 - xyCSS
- 人机交互,加速机器人拟人化
- 【LeetCode】剑指 Offer 48. 最长不含重复字符的子字符串
- qt 两种按钮点击事件应用
- 【ubuntu】更换下载源
- pytest学习(1)
- 模式识别学习笔记——1(线性分类器)
- HBuilder开发app,扫描枪中,使用input输入框,然后点击扫描,获取不到条码!
- [UE4]委托代理:单播委托,多播委托,动态单播委托,动态多播委托,事件
- 股市中如何用筹码分布选牛股,通达信幅图指标公式筹码寻牛
- WebGL three.js 3D 场景
- ip-guard文档加密后无小锁标志
- 学如逆水行舟,不进则退。
- ETI工作-测试文件多层folder树生成
- vue将毫秒为单位的时间转化成分钟和秒
热门文章
- 性能测试--jmeter的参数类型【5】
- mysql5.7卸载服务_win10卸载原mysql安装64位mysql5.7并修改root密码
- linux nginx 添加插件,linux安装nginx1.9.9实录
- python runner_【httprunner】自动化测试入门(基于python)!
- CASE WHEN 及 SELECT CASE WHEN的用法
- android 过滤ip,EditText Android过滤器的IP地址###。###。###。###?
- 恒压板框过滤实验数据处理_中学少见、高考常考的化学实验仪器
- 自动化测试===unittest和requests接口测试案例,测试快递查询api(二)
- Java类集框架 —— ArrayList源码分析
- 跨应用的访问 contentprovider