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 ...
随机推荐
- 如何使用 Redis 缓存
如何使用 Redis 缓存 前言 旁路缓存 只读缓存 读写缓存 设置多大的缓存合适 内存被写满了如何处理 缓存经常遇到的问题 1.缓存中的数据和数据库中的不一致 读写缓存 只读缓存 来个异常的栗子 1 ...
- 使用 GO-CQHttp或mirai框架 搭建QQ的机器人
我的博客 Go-CQHttp搭建QQ机器人 官方文档在这-->ATRU官方文档 Go-CQHttp + Atri 使用Linux系统部署 需求 服务器一台/带有Linux的机器 Python环境 ...
- netty系列之:netty中的核心编码器base64
目录 简介 netty codec的实现逻辑 netty中Base64的实现 netty中的base64编码和解码器 Base64Encoder Base64Decoder 总结 简介 我们知道数据在 ...
- Linux网络流量相关
一直以来对Linux网络这块都感觉比较乱 遇到一个UDP丢包的问题:在测试中,一台VM虚拟机,CPU利用率55%左右,内存利用率7%左右,网卡流量也远没到限制的时候出现了丢包情况 使用netstat ...
- Halo 开源项目学习(五):评论与点赞
基本介绍 博客系统中,用户浏览文章时可以在文章下方发表自己的观点,与博主或其他用户进行互动,也可以为喜欢的文章点赞.下面我们一起分析一下 Halo 项目中评论和点赞功能的实现过程. 发表评论 评论可以 ...
- Unity实现A*寻路算法学习2.0
二叉树存储路径节点 1.0中虽然实现了寻路的算法,但是使用List<>来保存节点性能并不够强 寻路算法学习1.0在这里:https://www.cnblogs.com/AlphaIcaru ...
- 3D打印CLI文件格式的读取
CLI 英文全称:COMMON LAYER INTERFACE 中文名称:通用层接口. 推荐从官方网址看一下其完整的内容: (https://www.hmilch.net/downloads/cli_ ...
- 为什么建议大家使用 Linux 开发?
关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Linux 能用吗? 我身边还有些朋友对 linux 的印象似乎还停留在黑乎乎的命令行界面上. ...
- VMWare中CentOS安装VM-Tools
查看CD-ROM驱动器的设备信息 可以通过下面几个命令来查看 dmesg命令 dmesg | egrep -i --color 'cdrom|dvd|cd/rw|writer' /proc/sys/d ...
- 112_Power Pivot 销售订单按 sku 订单类型特殊分类及占比相关
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 经过了一个双十一后,天天面对的都是订单.于是有了关于销售订单按sku类型分类的需求. 说明:(暂且不讨论这样分类 ...