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

  

最新文章

  1. 45 个非常有用的 Oracle 查询语句
  2. lintcode:装最多水的容器
  3. eclipse, Log4j配置(真心的详细~)
  4. HDU 5726 GCD(DP)
  5. SUP (SAP Mobile SDK 2.2) 连接 Sybase SQL Anywhere sample 数据库
  6. C语言strtok()函数:字符串分割
  7. hive集成sentry的sql使用语法
  8. 超级简便的容器化部署工具(使用 ASP.NET Core 演示)
  9. Linux(七)开机,重启和用户登录注销
  10. 部署Java和Tomcat
  11. 改变RadioButton的文字位置以及距离
  12. axios简单使用
  13. [uboot] (第一章)uboot流程——概述
  14. Vue-Cli 搭建项目 小白
  15. 如何在servlet刚启动时候获取服务器根目录?
  16. 【Java】【线程】
  17. 使用axios请求数据,post请求出错。因为axios传递的请求参数是json格式,而后端接口要求是formData
  18. 127.0.0.1 localhost 0.0.0.0 回环地址区别
  19. win10配置labelImg
  20. 【bug】VUE:Cannot read property '_withTask' of undefined

热门文章

  1. python的字典及相关操作
  2. redis无损数据迁移
  3. JavaScript深入理解系列:call与apply
  4. 腾讯云服务器ssh登录老是自动断开链接的解决办法
  5. Dockerfile 命令详解及最佳实践
  6. Istio实践(3)- 路由控制及多应用部署(netcore&springboot)
  7. 1.9 初学者应选择哪个Linux发行版?
  8. Linux系统安装Python3环境
  9. 深度好文:Linux文件系统剖析
  10. Docker被禁了!只能靠它了......