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 ...
随机推荐
- Java学习day38
Java内存:1.堆:存放new的对象和数组:可以被所有线程共享,不会存放别的对象引用 2.栈:存放基本变量类型(会包含这个基本类型的具体数值):存放对象的变量(会存放这个引用在堆里面的具体地址) 3 ...
- MySQL启动过程详解二:核心模块启动 init_server_components()
mysqld_main() 函数中,init_server_components() 函数负责MySQL核心模块的启动,包括mdl系统,Innodb存储引擎的启动等等: 1. mdl子系统初始化. 2 ...
- who 的页面制作
1. html 结构 <!-- section: Who we are --> <section id="who"> <div class=" ...
- python基础练习题(题目 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数)
day10 --------------------------------------------------------------- 实例017:字符串构成 题目 输入一行字符,分别统计出其中英 ...
- Linux用命令设置终端背景色和字体颜色
用命令改 1.setterm -inversecreen on 背景字体颜色互换 2.setterm -inversecreen on 恢复默认 3.setterm -[选项] [参数] |-back ...
- OpenHarmony 3GPP协议开发深度剖析——一文读懂RIL
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点)本文转载自:https://harmonyos.51cto.com/posts/10608 夏德旺 软通动力信息技术(集 ...
- Markdown基础语法(上)
前言 按照官方文档,和根据自己所用和所理解所写 一.标题语法 一级标题最大,六级标题最小 # 一级标题 ## 二级标题 ### 三级标题 #### 四级标题 ##### 五级标题 ###### 六级标 ...
- 使用client-go实现自定义控制器
使用client-go实现自定义控制器 介绍 我们已经知道,Service对集群之外暴露服务的主要方式有两种:NodePort和LoadBalancer,但是这两种方式,都有一定的缺点: NodePo ...
- 在字节跳动,一个更好的企业级SparkSQL Server这么做
SparkSQL是Spark生态系统中非常重要的组件.面向企业级服务时,SparkSQL存在易用性较差的问题,导致难满足日常的业务开发需求.本文将详细解读,如何通过构建SparkSQL服务器实现使用效 ...
- OAuth2授权服务器Id Server一键生成配置原理
OAuth2客户端的配置参数非常多,虽然Id Server通过控制台可视化解决了创建OAuth2客户端的问题.但是如何进一步降低OAuth2的使用难度,把创建的OAuth2客户端转化为配置成为了刚需, ...