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 ...
随机推荐
- 2021.11.09 P3435 [POI2006]OKR-Periods of Words(KMP)
2021.11.09 P3435 [POI2006]OKR-Periods of Words(KMP) https://www.luogu.com.cn/problem/P3435 题意: 对于一个仅 ...
- 【CSAPP】Performance Lab 实验笔记
perflab这节的任务是利用书中知识,来对图像处理中的Rotate和Smooth操作函数进行优化.这次没对上电波,觉得学了一堆屠龙之技.于我个人理解,现在计算机配置比以前高多了,连SWAP分区都几近 ...
- Linux vs Unix - Linux与Unix到底有什么不同?
来自:Linux迷链接:https://www.linuxmi.com/linux-vs-unix.html Linux和Unix这两个术语可以互换地用来指同一操作系统.这在很大程度上是由于他们惊人的 ...
- 【面试普通人VS高手系列】说说缓存雪崩和缓存穿透的理解,以及如何避免?
听说10个人去互联网公司面试,有9个人会被问到缓存雪崩和缓存穿透的问题. 听说,这9个人里面,至少有8个人回答得不完整. 而这8个人里面,全都是在网上找的各种面试资料去应付的,并没有真正理解. 当然, ...
- .net core JWT验证,HttpContext.User为空的问题
这几天在学习张老师.net core教程JWT部分,链接 https://mp.weixin.qq.com/s/7135y3MkUlPIp-flfwscig 教程使用的.net core 2.2, 在 ...
- mysql5.6 innodb_large_prefix引起的一个异常
phenomenon: Specified key was too long; max key length is 3072 bytes 在修改一个数据库字段时,字段容量被限制为了表前缀的大小而不是本 ...
- S2-045远程命令执行漏洞的利用
Apache Struts2 远程命令执行 (S2-045) 漏洞介绍: 漏洞编号:S2-045CVE编号:CVE-2017-5638漏洞类型:远程代码执行漏洞级别:高危漏洞风险:黑客通过利用漏洞可以 ...
- jQuery前端第三方框架
计时器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- C# .NET ML.NET 机器学习 图像分类
一. 准备工作 IDE是 VS2019.先下载好"resnet_v2_50_299.meta"这个文件,放入"C:\Users\jk\AppData\Local\Temp ...
- python操作MySQL与MySQL补充
目录 python操作MySQL 基本使用 SQL注入问题 二次确认 视图 触发器 事务 存储过程 函数 流程控制 索引 练习 python操作MySQL python中支持操作MySQL的模块很多, ...