cut命令、case与select语句
cut命令
常用参数:
-c character 字符
-d delimiter 分隔符
-f field 域(列)
--output-delimiter 输出分隔符 例:
# echo 12345 |cut -c2
2
# echo 12345 |cut -c1,4
14
# echo 12345 |cut -c2-4
234
# ifconfig eth0 |grep Mask |cut -d " " -f12 |cut -d ":" -f2 # head -1 /etc/passwd | cut -d ":" -f 1,3,4 --output-delimiter="#" 1.case语句
(2) case语法
case "choice" in
"var1" )
statement
;;
"var2" )
statement
;;
"var3" )
statement
;;
* )
statement
esac (2) 用法
从/etc/init.d/httpd里拷的一段
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status -p ${pidfile} $httpd
RETVAL=$?
;;
restart)
stop
start
;;
*)
echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"
exit 1
esac --------------------
例:sshd的脚本
#!/bin/bash
case "$1" in
start)
#启动sshd服务
pid=`pidof sshd`
if [ -z $pid ]; then
/usr/sbin/sshd
echo "正在启动 sshd: [确定]"
else
echo "服务sshd(pid $pid)已存在。"
fi
;; stop)
#停止sshd服务
pid=`pidof sshd`
if [ -z $pid ]; then
echo "服务sshd 已停"
else
killall sshd &> /dev/null
echo "停止 sshd: [确定]"
fi
;; restart)
#重新启动
pid=`pidof sshd`
if [ -z $pid ]; then
echo "停止 sshd:[失败]"
/usr/sbin/sshd
echo "正在启动 sshd:[确定]"
else
echo "停止 sshd:[确定]"
/usr/sbin/sshd
echo "正在启动 sshd:[确定]"
fi
;; status)
#查看状态
pid=`pidof sshd`
if [ -z $pid ]; then
echo "服务sshd 已停"
else
echo "服务sshd (pid $pid)正在运行..."
fi
;; *)
#如果参数不是start|stop|restart|status时,则提示
echo "用法:/root/ssh1.sh {start|stop|restart|status}"
esac 例: 写一个shell脚本,传入一个参数(字母),判断传入的字母是大小还是小写
#!/bin/bash case "$1" in
[A-Z] )
echo "大写"
;;
[a-z] )
echo "小写"
;;
* )
echo "不是字母"
exit 1
esac
----------------------------------- #!/bin/bash if [[ "$1" =~ [A-Z] ]];then -- ~符号是匹配的意思
echo "大写"
elif [[ "$1" =~ [a-z] ]];then
echo "小写"
else
echo "不是字母"
fi 2. select
select表达式是一种bash的扩展应用,从ksh引进。
2.1 语法 PS3="prompt" --使用PS3来输出提示信息
select var in choice1 choice2 choice3 ...
do
echo "................."
done 2.2 用select做一个选择菜单
#!/bin/bash PS3="请选择你使用的手机类型" select phone in xiaomi huawei iphone samsung lenovo oppo meizu
do
case "$phone" in
iphone )
echo "你使用的是$phone"
echo "苹果ios系统"
break
;;
* )
echo "你使用的是$phone"
echo "安卓系统"
break
;;
esac
done
cut命令、case与select语句的更多相关文章
- 函数 、while、case、select 语句结合
[root@bogon ~]# cat menue.sh #!/bin/bash yum_list(){ #列出所有yum安装包 yum repolist [ $? -eq ] && ...
- 基本select 语句总结
--------------基本select语句总结 8.6---------------------------------------------------------------------- ...
- SQL Fundamentals: Basic SELECT statement基本的select语句(控制操作的现实列)(FROM-SELECT)
SQL Fundamentals || Oracle SQL语言 Capabilities of the SELECT Statement(SELECT语句的功能) Data retrieval fr ...
- SQL指南-SELECT语句
SELECT 语句 SELECT 语句用于从表中筛选数据.列表结果存储于一个结果表中(称作result-set) 语法 SELECT column_name(s)FROM table_name 注意: ...
- 基本select语句的生命周期
(1) 客户端sqlserver网络接口通过一种网络协议(可以是共享内存:简单高速,客户端和sql server在同一台计算机默认连接方式:TCP/IP:访问sql server最常用的一种协议,客户 ...
- SQL SELECT语句
基本SQL SELECT语句 1. 下面的语句是否可以执行成功 select ename , job , sal as salary from emp; 2. 下面的语句 ...
- 曲演杂坛--为什么SELECT语句会被其他SELECT阻塞?
很多刚入门的DBA在捕获阻塞得时候,会问这么一个问题“为什么这个SELECT语句被那个SELECT语句阻塞了,难道不是共享锁么?” 让我们来做个小测试,首先准备一些测试数据: --========== ...
- 用sql的select语句从数据库中获取数据
基本的select语句 select语句中的算数表达式和NULL值 列的别名 使用连接符操作,literal character strings,alternative quote operator, ...
- MSSQLServer基础06(变量,case,选择语句)
变量 声明:declare @UserName nvarchar(50) 赋值1:set @UserName=N'杨':修改 赋值2:select @UserName=N'牛':修改 输出:print ...
随机推荐
- HCIE笔记-第八节-传输层协议
传输层:实现"端到端"的服务 应用到应用 端口 = port [逻辑端口] 基于应用级别的互访,就是 端口到端口的互访. 传输层 = 0-65535[端口范围] === TCP/U ...
- 2021.08.01 P3377 左偏树模板
2021.08.01 P3377 左偏树模板 P3377 [模板]左偏树(可并堆) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<iostream> ...
- nodejs的TCP相关的一些笔记
TCP协议 基于nodejs创建TCP服务端 TCP服务的事件 TCP报文解析与粘包解决方案 一.TCP协议 1.1TCP协议原理部分参考:无连接运输的UDP.可靠数据传输原理.面向连接运输的TCP ...
- switch语法
1. js 代码 // 1. switch 语句也是多分支语句 也可以实现多选1 // 2. 语法结构 switch 转换.开关 case 小例子或者选项的意思 // switch (表达式) { / ...
- 什么?你们公司还没有将JVM初始和最大堆内存大小设置为相同值?
微信公众号:Java大家族 JVM将初始和最大内存大小设置为相同值的好处 启动应用程序时,我们指定初始内存大小和最大内存大小.对于在 JVM(Java 虚拟机)上运行的应用程序,初始和最大内存大小通过 ...
- springboot:使用异步注解@Async的前世今生
在前边的文章中,和小伙伴一起认识了异步执行的好处,以及如何进行异步开发,对,就是使用@Async注解,在使用异步注解@Async的过程中也存在一些坑,不过通过正确的打开方式也可以很好的避免,今天想和大 ...
- 浅谈 UNIX、Linux、ios、android 他们之间的关系
开源Linux 一个执着于技术的公众号 Unix, 简化形成了Linux,Linux则是Android的内核,而苹果则是使用unix系统作为ios和macos的内核. 几个系统出现的时间 UNIX系统 ...
- .net core JWT验证,HttpContext.User为空的问题
这几天在学习张老师.net core教程JWT部分,链接 https://mp.weixin.qq.com/s/7135y3MkUlPIp-flfwscig 教程使用的.net core 2.2, 在 ...
- netty系列之:netty中常用的xml编码解码器
目录 简介 XmlFrameDecoder XmlDecoder 总结 简介 在json之前,xml是最常用的数据传输格式,虽然xml的冗余数据有点多,但是xml的结构简单清晰,至今仍然运用在程序中的 ...
- 【Azure 环境】【Azure Developer】使用Python代码获取Azure 中的资源的Metrics定义及数据
问题描述 使用Python SDK来获取Azure上的各种资源的Metrics的名称以及Metrics Data的示例 问题解答 通过 azure-monitor-query ,可以创建一个 metr ...