
shell编程
文章平均质量分 65
weixin_46837396
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
systemctl管理脚本以及进程锁
一 systemctl介绍systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分1、/usr/lib/systemd/system #系统服务,开机不需要登陆就能运行的程序(相当于开启自启)2、/usr/lib/systemd/user #用户服务,需要登录后才能运行的程序/usr/lib/systemd/目录下又存在两种类型的文件:1、*.service # 服务unit文件2、*.target # 开机级别unitcentos原创 2021-03-18 15:58:36 · 1325 阅读 · 0 评论 -
三剑客之awk命令
一 awk简介 awk命名源自于它的三大作者名字的首字母,分别是Alfred Aho、Brian Kernighan、Peter Weinberger。(gawk是awk的GNU版本,它提供了Bell实验室和GNU的一些扩展)。 awk 是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。原创 2021-03-18 14:28:23 · 465 阅读 · 0 评论 -
三剑客之sed命令
一 sed介绍 sed全称(stream editor)流式编辑器,Sed主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等,工作流程如下sed 是一种在线的、非交互式的编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出,或者使用sed -i选项原创 2021-03-17 21:59:05 · 805 阅读 · 0 评论 -
三剑客之grep命令
一 grep介绍ps aux --sort=cpu ###查看进程排序cpu的ps aux --sort=cpu |grep sshgrep命令主要用于过滤文本,grep家族如下grep: 在文件中全局查找指定的正则表达式,并打印所有包含该表达式的行egrep:扩展的egrep,支持更多的正则表达式元字符fgrep:固定grep(fixed grep),有时也被称作快速(fast grep),它按字面解释所有的字符grep命令格式如下grep [选项] PATTERN 文件1 文件2 .原创 2021-03-17 15:56:11 · 919 阅读 · 0 评论 -
expect
一 expect介绍 expect是一个免费的编程工具,用来实现自动的交互式任务,而无需人为干预。说白了,expect就是一套用来实现自动交互功能的软件。需要安装yum install -y expect说白了就是实现交互式—> 非交互式的过程expect基础在使用expect时,基本上都是和以下四个命令打交道:spawn启动新的进程expect从进程接收字符串send用于向进程发送字符串命令作用interact允许用户交互s原创 2021-03-17 12:21:35 · 221 阅读 · 0 评论 -
信号控制
信号控制一 信号说明在脚本执行过程中, 可能会被一些键盘操作快捷方式所打断, 影响脚本运行# HUP(1): 1、挂起信号 2、往往可以让进程重新加载配置本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联。登录Linux时,系统会分配给登录用户一个终端(Session)。在这个终端运行的所有程序,包括前台进程组和后台进程组,一般都 属于这个 Session。当用户退出Linux登录时,前台进程组和后原创 2021-03-16 20:46:56 · 610 阅读 · 0 评论 -
数组
一 数组介绍什么是数组?数组就是一系列元素的集合,一个数组内可以存放多个元素为何要用数组?我们可以用数组将多个元素汇总到一起,避免单独定义的麻烦二 数组的使用2.1 数组的定义普通数组—declare -a####方式一[root@localhost ~]# declare -a web_ips=(1.1.1.1 2.2.2.2 3.3.3.3)[root@localhost ~]# arrary=(4.4 aaaa 222)[root@localhost ~]# declare原创 2021-03-13 17:06:42 · 218 阅读 · 0 评论 -
函数
##一 函数介绍什么是函数???函数就是用来盛放一组代码的容器,函数内的一组代码完成一个特定的功能,称之为一组代码块,调用函数便可触发函数内代码块的运行,这可以实现代码的复用,所以函数又可以称之为一个工具为何要用函数#1、减少代码冗余#2、提升代码的组织结构性、可读性#3、增强扩展性二 函数的基本使用二 函数的基本使用具备某一功能的工具=>函数事先准备好哦工具=>函数的定义遇到应用场景,拿来就用=>函数的调用所以函数的使用原则:先定义,后调用定义函数#语原创 2021-03-12 19:26:13 · 254 阅读 · 0 评论 -
流程控制之select语句
一 语法select表达式是bash的一种扩展应用,擅长于交互式场合。用户可以从一组不同的值中进行选择select var in ...do ... breakdone二 案例#!/bin/bashPS3="请输入操作编号:"select choice in {"退出","取款","转账","查询余额"}do #echo "用户的选择是--- $choice" case $choice in "退出") break原创 2021-03-12 16:20:15 · 163 阅读 · 0 评论 -
流程控制之for循环
一 语法#===========》Shell风格语法for 变量名 参数1 参数2 参数3for 变量名 [ in 取值列表 ]do 循环体done#===========》C语言风格语法for ((初值;条件;步长))do 循环体done示例1#!/bin/bashfor x in 111 "qqq" "aaa"do echo "hello $x"done取命令的结果,只要是空格分开的就行#!/bin/bashfor x in `ls /ro原创 2021-03-12 15:36:08 · 115 阅读 · 0 评论 -
流程控制之while循环
一 语法# 一、while语句结构:条件为真时,执行循环体代码while 条件do 循环体done# 二、until语法结构:条件为假时,一直执行循环体代码,直到条件变为真until 条件do 循环体done简单示例—>while循环#!/bin/bashcount=0while [ $count -lt 8 ]doecho $countlet count++done示例–>until循环#!/bin/bashcount=0until [ $c原创 2021-03-11 21:42:55 · 229 阅读 · 0 评论 -
流程控制之case语句
一 语法case 变量 in模式1) 命令序列1 ;;模式2) 命令序列2 ;;模式3) 命令序列3 ;;*) 无匹配后命令序列esac示例1#!/bin/bashread -p "please input your name: " nameif [ -z $name ];then # echo "请输入用户名" #exit name="default"ficase $name in"root") echo "管理员" ;;原创 2021-03-11 19:30:31 · 237 阅读 · 0 评论 -
流程控制之if判断
流程控制之if判断一:单分支ifif 条件;then要执行的命令1要执行的命令2要执行的命令3…fi注意:如果单分支的话可以用[] 与&& 连用替代即可示例#!/bin/bash#第一道关卡#[ $# -ne 2 ] && echo "uasge :$0 arg1 arg2" && exit#第二道关卡#[[ ! $1 =~ ^[0-9]+$ ]] && echo " 请输入整数" && exit#原创 2021-03-07 19:04:32 · 143 阅读 · 0 评论 -
元字符的使用
一、元字符元字符指的是能够被shell解释的特殊字符,每个特殊字符都有其特殊含义,这些字符一方面可用于变量值的运算、我们可以称之为运算符,另外一方面可以和shell命令配合使用来达到更高级的效果算数运算符运算符- +- -- *- /- %算数运算符需要配合下述操作使用# 浮点运算bc # 整数运算expr$(())$[]let整数运算示例[root@localhost test]# a=1[root@localhost test]# b=2[r原创 2021-03-06 17:52:11 · 1053 阅读 · 0 评论 -
变量值操作以及元字符
一、 变量值的操作1.1变量值的长度示例1[root@localhost ~]# x=199[root@localhost ~]# echo ${#x}3[root@localhost ~]# expr length $x3[root@localhost ~]# echo $x |wc -L3[root@localhost ~]# echo $x |awk '{print length}'3示例2[root@localhost ~]# z="a b "[root@local原创 2021-03-05 18:09:17 · 185 阅读 · 0 评论 -
基本数据类型与值操作
一、 基本数据类型1.变量值的类型整形:年龄、个数、号码例:level=10年龄=23浮点型:身高、体重salary=3.3height=1.76字符串类型:国籍、名字、名人名言、IP地址等描述类型msg=“hello word” #软引用msg=‘hello word’ # 硬引用,包含的字符串没有特殊意义。示例[root@localhost ~]# x=222[root@localhost ~]# echo "==>$x"==>222[root@local原创 2021-03-05 12:01:24 · 97 阅读 · 1 评论 -
变量
变量一、变量介绍什么是变量?变指的是事物的状态是可以发生变化的量指的是记录事物的状态变量本质就是一种数据存取的机制,变量的数据都是存放于内存中的为何要有变量? 程序运行的本质就是一系列状态的变化。程序=数据+功能,程序执行的本质就是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态以及状态的变化。比如: 英雄的等级为1,打怪升级(变)为10 僵尸的存活状态True,被植物打死了,于是变为False 人的名字为e原创 2021-03-04 22:34:40 · 365 阅读 · 1 评论 -
Shell编程语言
shell基础一 编程与编程语言Shell是一门编程语言,作为学习shell的开始,需要事先搞明白:编程的目的是什么?什么是编程语言?什么是编程? 编程的目的:#计算机的发明,是为了用机器取代/解放人力,而编程的目的则是将人类的思想流程按照某种能够被计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑/电脑一样自动执行的效果。 什么是编程语言?#上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质。在编程的世界转载 2021-03-04 18:03:37 · 375 阅读 · 1 评论