10、shell编程+流程控制+分支嵌套
如: mkdir `echo $USER`
mkdir "$(date)"
如:a=tt
取子串 ${变量名:(+/-)n:n}
+n 从左边第n个位置开始取(第一个字符是0)
n 取多少个
s="abcdefg"
字符删除 ${变量名#*截止字符}
- #*x 从左边开始删,遇到第一个x为止
- ##*x 从左边开始删,遇到最后一个x为止
- %x* 从右边开始删除,遇到第一个x为止
- %%d* 从右边开始删除,遇到最后一个x为止
- str=/dir1/dir2/dir3/dir4/file.txt
- echo {str#*d} --从左边开始,删到第一个d为止 ir1/dir2/dir3/dir4/file.txt
- echo {str##*d} --从左边开始,删到最后一个d为止 ir4/file.txt
- echo ${str%d*} /dir1/dir2/dir3/
- echo ${str%%d*} /
basename 取完整路径中的文件名
- basename /etc/sysconfig/network
- network
- basename $str
- file.txt
2、算术运算
- -eq 等于
- -ne 不等于
- -gt 大于
- -lt 小于
- -ge 大于等于
- -le 小于等于
- = 等于
- != 不等于
- \> 大于
- \< 小于
- -z string 字符是否为空
- -n string 字符是否不为空
- -b file
- -c file
- -d file
- -e file
- -f file
- -g file 文件是否设置了 sgid
- -G file
- -r file
- -w file
- -x file
- 格式:read [option] [var]
- option:
- -p 设置提示字符
- -s 输入时不显示,如同输入密码
- -t n 设置等待时间,如果过了指定的秒数,就返回一个非零的状态
- -n n 设置只接收多个字符,达到这个字符个数n后,就自动回车
如:read -p “请输入你的姓名:" name
cut
- 语法:cut [option] [文件名]
- option:
- -b 取字节
- -c 取字符
- -f 取字段
- -d 指定字段分隔符
- 范围表示:
- N 第N项
- N- 从第N项开始,到最后
- N-M N-M 项
- -M 从1到M
- [root@s100 script]# cat if1.sh
- #!/bin/bash
- #if 使用示例,显示两个数的最大数
- read -p "请输入第一个数:" n1
- read -p "请输入第二个数:" n2
- max=$n1
- if [ $n2 -gt $max ]
- then
- max=$n2
- fi
- echo "最大数是: $max"
格式二:
例:输入文件,判断是否存在,如果存在,判断当前用户对它的权限
用分支嵌套实现:
10、shell编程+流程控制+分支嵌套的更多相关文章
- shell编程流程控制
前言: 在linux shell中,通常我们将一些命令写在一个文件中就算是一个shell脚本了,但是如果需要执行更为复杂的逻辑判断,我们就需要使用流程控制语句来支持了. 所谓流程控制既是通过使用流程控 ...
- shell编程--流程控制for,do-while,if-then,break,continue,case等
2.5 流程控制 2.5.1 if语法 1.语法格式 if condition then statements [elif condition then statements. ..] ...
- Linux学习 -- Shell编程 -- 流程控制
if语句 单分支 if [ 条件判断式 ]; then 程序 fi 或者 if [ 条件判断式 ] then 程序 fi 例子: 双分支 if [ 条件判断式 ] then 程序 else 程序 fi ...
- linux shell编程流程控制
条件选择 单分支条件 多分支条件 选择执行if语句 单分支 if 判断条件;then 条件为真的分支代码 fi 双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 f ...
- Python 流程控制-分支结构详解
目录 Python 流程控制--分支结构 1.结构分类 顺序结构 分支结构 循环结构 2.分支结构详解 分支结构 定义格式: if 单支结构 if 双分支结构 if 多分支结构 Python 流程控制 ...
- JavaScript 流程控制-分支
JavaScript 流程控制-分支 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的,很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. 简单理解:流程控 ...
- linux shell 之流程控制 if if else while
(1)流程控制不可以为空: (2)if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi 条件 ...
- Shell工具| 流程控制
1. 流程控制 if 判断 ()[ 条件判断式 ],中括号和条件判断式之间必须有空格 ()if后要有空格 [kris@hadoop datas]$ vim if.sh #!/bin/bash -eq ...
- python基础-->流程控制-->分支结构-->单项分支-->双向分支
# ###流程控制 ''' 流程:代码执行过程 流程控制:对代码执行过程的管控 顺序结构:代码默认从上到下依次执行 分支结构:对代码执行过程的管控 循环机构: while for ..in.... 分 ...
随机推荐
- jwt揭秘(含源码示例和视频)
JSON Web Tokens,是一种开发的行业标准 RFC 7519 ,用于安全的表示双方之间的声明.目前,jwt广泛应用在系统的用户认证方面,特别是现在前后端分离项目. 1. jwt认证流程 在项 ...
- ora-01489 字符串连接的结果过长 解决方案
如下代码,使用listagg进行分组拼接时,常常会报 ora-01489 错误,造成该报错的主要原因是:oracle对字符变量的长度限制,正常情况下,oracle定义的varchar2类型变量的长度不 ...
- jQuery中的属性(四)
1. attr(name|properties|key,value|fn), 设置或返回被选元素的属性值 参数说明: name:属性名称 properties:作为属性的“名/值对”对象 key,va ...
- 《为什么说Redis是单线程的以及Redis为什么这么快!》
为什么说Redis是单线程的以及Redis为什么这么快! 一.前言 近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”.什么是“热数据和冷数据”,复杂一点的会问到缓 ...
- URL、URI、URN之间的区别
URL统一资源定位符 URI统一资源标识符 URN统一资源名称 URL是URI的一个特例. URI由URL和URN两部分组成. 在java类中,URI类不包含任何访问资源的方法,它唯一的作用就是解析. ...
- Python中xlrd和xlwt模块使用方法----》》数据库数据导出(之一)
xlrd模块实现对excel文件内容读取,xlwt模块实现对excel文件的写入. (1) 打开excel文件并获取所有sheet >>> import xlrd >>& ...
- vue.js操作元素属性
vue动态操作div的class 看代码: <!doctype html> <html lang="en"> <head> <meta c ...
- Asp.Net Core 工作单元 UnitOfWork UOW
Asp.Net Core 工作单元示例 来自 ABP UOW 去除所有无用特性 代码下载 : 去除所有无用特性版本,原生AspNetCore实现 差不多 2278 行代码: 链接:https://pa ...
- Loadrunner 进行压力测试 并发测试
问题背景: 今年公司项目进行Saas化转型,在中间遇到很多问题,其中之一就是 Saas化后多租户的性能 和 并发问题.公司让我来调研和重现问题,通过调研总结了一些经验教训,分享给大家. 环境: Loa ...
- cURL error 60: SSL certificate problem: unable to get local issuer certificate(转)【亲测】
php5.6以上的版本会出现这种问题 解决办法: [开启拓展] extension=curl extension=openssl [配置证书] 访问https://curl.haxx.se/docs/ ...