![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shell
shell
鲸鱼妹子
一个热爱IT萌妹纸
展开
-
shell基础知识理解
文章目录一、什么是 shell二、shell的分类1.图形界面shell(Graphical User Interface shell 即 GUI shell)2.命令行式shell(Command Line Interface shell ,即CLI shell)3.交互式和非交互式四.shell脚本和shell的区别三.shell的特点一、什么是 shellShell俗称壳(用来区别于...原创 2020-02-07 15:48:35 · 215 阅读 · 0 评论 -
第一个shell脚本的编写+脚本的运行方式+which命令
一、which和/etc/shells文件1.which命令的功能: 1 | which命令用于查找并显示给定命令的绝对路径, 2 | 环境变量$PATH中保存了查找命令时需要遍历的目录。 3 | which指令会在环境变量$PATH设置的目录里查找符合条件的文件。 4 | 使用which命令,就可以看到某个系统命令是否存在,以及执行的到 底是哪一个位置的命令。2.向用户...原创 2020-02-08 18:07:50 · 882 阅读 · 0 评论 -
shell中定义和使用、修改、删除、及设置只读变量+花括号的使用+单双引号的区别+decalre声明变量
一、变量的定义1.变量的定义变量就是对内存中的一段地址空间。在研究shell中的变量时应该注意shell中变量的命名不能和shell的关键字同名。可以使用help命令来查看关键字都有哪些.2.定义变量的方式有三种:注意:shell中变量没有数据类型 任何类型它都默认为字符串。3.变量的使用使用一个定义过的变量,只要在变量名前加美元符号$即可。4.花括号的运用(...原创 2020-02-10 15:53:53 · 276 阅读 · 0 评论 -
linux之shell命令的替换
文章目录一、命令的替换的定义1.命令替换的定义1.1计算date命令的运行时间1.2在shell里返回ls命令的结果一、命令的替换的定义1.命令替换的定义命令替换就是将命令的输出结果赋值给某个变量。1.1计算date命令的运行时间1.2在shell里返回ls命令的结果...原创 2020-02-10 16:09:37 · 620 阅读 · 0 评论 -
Linux之shell中的数学运算详解(整数运算与小数运算的几种方式)
文章目录一、运算符号及运算命令1.整数运算(1)双小括号法(())2.let表达式3.expr表达式4.$[]5.小数计算(bc)一、运算符号及运算命令1.整数运算(1)双小括号法(())格式: 1 | ((表达式)) 2 | 变量=$((表达式)) 获取某个表达式的运算结果简单的数值运算:稍微复杂的综合数学运算:2**3表示2的3次幂逻辑运算(1真0假):...原创 2020-02-10 16:49:02 · 2555 阅读 · 0 评论 -
Linux之shell中特殊参数的归纳整理
文章目录一、shell中特殊参数的归纳整理1.$变量名(位置参数)2.多个位置参数的传递引用3. $0 获取脚本文件的名字4. 单独获取脚本文件的路径和名称5. $#获取脚本传参的个数6.set设置位置参数(同命令脚本传参)7.==美元符 * 和美元符 @ 的区别== + ==函数的定义==+ ==for循环的定义==8.shfit 自动移动位置一、shell中特殊参数的归纳整理1.$变量名(...原创 2020-02-10 18:11:50 · 140 阅读 · 0 评论 -
Linux之shell命令执行完的退出状态详解+if语句的定义方法
文章目录一、退出状态的原理1.退出状态的原理2.$?的作用一、退出状态的原理1.退出状态的原理2.$?的作用1.先执行一条命令,再去echo $?查看数字2.一般情况下0表示上一条命令执行正确,非0表示错误(错误原因可以查$?的值)(1)(2)$?获取退出状态(3)上一个函数的返回值...原创 2020-02-10 19:09:04 · 1305 阅读 · 0 评论 -
Linux之shell中的字符串详解(占位、拼接、截取、统计)
文章目录一、shell中的字符串详解(占位、拼接、截取、统计)1.字符串的占位2.统计字符串中字符的个数3.字符串的拼接4.字符串的截取4.1从指定位置开始截取(左0右1)4.2从指定字串开始截取一、shell中的字符串详解(占位、拼接、截取、统计)1.字符串的占位2.统计字符串中字符的个数3.字符串的拼接4.字符串的截取4.1从指定位置开始截取(左0右1)(1)...原创 2020-02-11 16:53:27 · 4950 阅读 · 0 评论 -
Linux之shell常用命令(一)echo命令详解
文章目录1. -n表示不换行2. -e 结合 \c 强制不换行3.显示转义字符4.显示结果定向到文件5.原样输出字符串,不进行转义或取变量(用单引号)6.显示命令执行结果7.常用转义字符的含义1. -n表示不换行2. -e 结合 \c 强制不换行(-e开启转义)3.显示转义字符 1 | echo "\"It is a test\"" 2 | 结果将是: 3 | "I...原创 2020-02-11 17:00:28 · 277 阅读 · 0 评论 -
Linux之shell常用命令(二)read命令详解
文章目录1.read命令的功能2.-p 显示提示信息3. -n 设置 read 命令计数输入的字符4.-t指定 read 命令等待输入的秒数1.read命令的功能1. read 命令用于从标准输入读取数值。2. read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。2.-p 显示提示信息3. -n 设置 ...原创 2020-02-11 17:07:16 · 279 阅读 · 0 评论 -
Linux之shell常用命令(三)alias命令详解
文章目录1.alias的功能2.临时设置别名3.删除临时别名4.永久设置别名1.alias的功能设置指令的别名,用户可利用alias,自定指令的别名。若仅输入alias,则可列出目前所有的别名设置。alias的效力仅及于该次登入的操作。若要每次登入是即自动设好别名,可在 /etc/profile或自己的 ~/.bashrc 中设定指令的别名。 还有,如果你想给每一位用户都生效的别名,请把...原创 2020-02-11 17:12:31 · 300 阅读 · 0 评论 -
Linux之shell中的函数
文章目录一、shell中函数的概念二、举例1.计算所有参数的和一、shell中函数的概念注意不同的shell版本不一定都支持定义和调用相反的顺序$# 可以获取传递参数的个数;$@ 或 $* 可以一次性获取所有的参数$? 可以获取函数的退出状态(返回值)二、举例1.计算所有参数的和...原创 2020-02-14 15:45:27 · 107 阅读 · 0 评论 -
Linux之shell中简单的的 if 语法
文章目录一、if语法的定义1、仅有if2.if -else语句3.if-elif-else语句一、if语法的定义bash shell会按顺序执行if语句,如果command执行后且它的退回状态是0,则会执行符合该条件执行的语句否则后面的命令不执行,跳到下一条命令。当有多个嵌套时,只有第一个返回0退出状态的命令会导致符合该条件执行的语句部分被执行,如果所有的语句的执行状态都不为0,则执...原创 2020-02-14 16:08:02 · 789 阅读 · 0 评论 -
Linux之shell中if语句--test命令
文章目录1.test命令的用法1.1数值比较1.2字符串比较1.3文件比较2.复合条件测试3.if-then的高级特性1.test命令的用法Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符串和文件三个方面的测试。test命令可以判断三类条件:数值比较字符串比较文件比较1.1数值比较可以用在数字和变量上比较描述...原创 2020-02-14 17:10:11 · 1558 阅读 · 0 评论 -
Linux之shell中的 while 循环语句和 until 循环语句
文章目录一、while循环1.while循环二、until循环1.until循环一、while循环1.while循环while循环是shell脚本中最简单的一种循环:当条件满足时,while重复地执行一组语句,当条件不满足时,就退出while循环格式:例1: 计算1-100的和例2: 计算从m到n的总和例3: 实现一个简单的加法计时器二、until循环...原创 2020-02-14 17:36:24 · 539 阅读 · 0 评论 -
Linux之shell中的for循环
文章目录shell中的for循环1.C语言风格的for循环2.python风格的for in循环3.当for 作用的序列是命令的执行结果4.使用特殊符号shell中的for循环1.C语言风格的for循环格式:例1: 计算1-100的和几种变形(1)省略表达式1:(2)省略表达式2:(3)省略表达式3:(4)省略全部表达式:2.python风格的f...原创 2020-02-14 17:56:22 · 406 阅读 · 0 评论 -
Linux之shell中的case in语句
文章目录shell中的case in 语句1.case in 的用法2.case in和正则表达式shell中的case in 语句1.case in 的用法格式: 1 | case expression in 2 | PAT1) 3 | 执行语句 4 | ;; 5 | PAT2) 6 | 执行语句 7 | ;; 8 | *...原创 2020-02-14 18:11:29 · 2825 阅读 · 0 评论 -
Linux之shell中的select in语句
文章目录shell中的select in语句1.select in 用法2.select in 通常和 case in 搭配使用shell中的select in语句1.select in 用法select in循环用来增强交互性,它可以显示出带编号的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能。select in 是shell独有的一种循环,非常适合终端(Term...原创 2020-02-14 21:37:55 · 682 阅读 · 0 评论 -
Linux之shell中的 数组
文章目录shell中的 数组1.数组的定义2.数组的定义2.1用小括号将变量值括起来赋值给数组变量2.2采用键值对的形式赋值2.3通过分别定义数组变量的方法来定义2.4动态地定义数组变量3.数组的打印4.数组元素添加5.数组元素的删除6..数组的赋值7.数组内容的截取和替换7.1 截取7.2数组元素的替换8.统计数组元素的个数9.栗子shell中的 数组1.数组的定义在shell的数组...原创 2020-02-14 22:07:03 · 685 阅读 · 0 评论 -
Linux之shell中的 环境变量
文章目录Linux之shell中的 环境变量1.变量的分类2.什么是环境变量3.设置环境变量3.1自定义环境变量的三种方法(临时)3.2永久设置环境变量(在全局文件中设置)3.3用户环境变量设置(只对单个用户生效)3.4全局环境变量的配置(对所有用户都会生效)4.取消环境变量5.查看环境变量6.常用的系统自带的环境变量7.环境变量初始化与对应文件的生效顺序8.小结Linux之shell中的 环境...原创 2020-02-14 22:27:11 · 2238 阅读 · 0 评论 -
Linux之shell常用命令(一)diff(比较文件或目录)、patch(打补丁)
文章目录shell中常用的命令—diff和patch一、diff1.diff命令的定义2. diff用法3.2.diff比较目录二、patch命令shell中常用的命令—diff和patch一、diff1.diff命令的定义diff命令在最简单的情况下,比较给定的两个文件的不同。如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。diff命令是以逐行的方式,比较文本文件...原创 2020-02-14 23:17:17 · 1946 阅读 · 0 评论 -
Linux之shell常用命令(二 )cut(截取)
文章目录shell中常用的命令—cut命令1.cut命令1.1语法1.2 例子shell中常用的命令—cut命令1.cut命令cut命令通常用来截取1.1语法cut(选项)(参数)选项:参数说明-b仅显示行中指定直接范围的内容-c仅显示行中指定范围的字符-d指定字段的分隔符,默认的字段分隔符为“TAB”-f显示指定字段的内容...原创 2020-02-14 23:33:24 · 825 阅读 · 0 评论 -
Linux之shell常用命令(三) sort(排序)、uniq(处理重复字符)
文章目录shell中常用的命令—sort和uniq1.sort命令和uniq命令的用法2.命令的使用举例2.1sort的默认用法2.2 ==-n== 纯数字排序2.3 ==-rn== 倒序数字排序2.4 ==-o== 输出到指定文件中2.5 ==-u== 去掉重复数字2.6 ==sort -urn== 倒序去掉重复数字2.7 ==uniq -c== 每行显示一次并统计重复次数(左次数,右数据)2...原创 2020-02-14 23:45:10 · 2019 阅读 · 0 评论 -
Linux之shell中常用的命令---seq命令
shell中常用的命令—seq命令1.seq命令的用法seq:squeue 是一个序列的缩写主要用来输出序列化的东西seq命令用于以指定增量从首数开始打印数字到尾数,即产生从某个数到另外一个数之间的所有整数,并且可以对整数的格式、宽度、分割符号进行控制。语法:在这里插入代码片...原创 2020-02-17 16:33:08 · 498 阅读 · 0 评论 -
Linux之shell中常用的命令---join命令
文章目录shell中常用的命令---join命令1.join命令的用法1.连接2.指定输出字段3.指定分隔符4.不匹配的行输出shell中常用的命令—join命令1.join命令的用法功能:将两个文件中,指定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。默认区分大小写1.连接内连接:将两个文件中每列第一个字符相同的行合并全连接...原创 2020-02-17 16:43:31 · 444 阅读 · 0 评论 -
Linux之shell中常用的命令---tr命令
文章目录shell中常用的命令---tr命令1.tr命令的用法2.具体使用凯撒加密shell中常用的命令—tr命令1.tr命令的用法Linux tr 命令用于转换或删除文件中的字符。tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备参数:-c, --complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换...原创 2020-02-17 17:22:27 · 307 阅读 · 0 评论 -
Linux之shell中常用的命令---xargs命令
文章目录shell中常用的命令—xargs命令1.xargs的功能2.xargs用法举例shell中常用的命令—xargs命令1.xargs的功能xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具xargs可以将管道或标准输入数据转换成命令行参数,也能够从文件的输出中读取数据xargs也可以将单行或多行文本输入转换为其他格式(多行变单行,单行变多行)xargs默认的命...原创 2020-02-17 17:38:59 · 745 阅读 · 0 评论 -
Linux之shell中的正则表达式
文章目录shell中的正则表达式1.正则表达式是什么2.为什么要学习正则表达式3.正则表达式处理数据过程2.`*符号`3.`.符号`4.`^符号`5.`$符号`6.`[ ]符号`7.`\符号`8.`\<\>符号`9.`\{\}符号`shell中的正则表达式1.正则表达式是什么正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的...原创 2020-02-17 18:01:17 · 172 阅读 · 0 评论 -
linux 文本处理 三剑客 之 grep 命令
文章目录shell中的grep命令1.grep命令2.grep 的格式(贪婪模式的匹配)3.举例理解正则表达式和grep结合的栗子几道练习题shell中的grep命令1.grep命令grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名,搜索的结果被送到屏幕,不影响原文件内容grep可用于shell脚本,因为gr...原创 2020-02-17 18:41:06 · 213 阅读 · 0 评论 -
Linux之shell的for+数组+字符串练习:利用bash for循环打印下面这句话中字母数不大于6的单词。
1.题目:方法一:c形式的for循环+数组方法二:python式的for循环+数组方式三:字符串+python for循环原创 2020-02-17 18:51:08 · 733 阅读 · 0 评论 -
linux 文本 处理 三剑客 之 sed 命令
文章目录1.sed命令的定义2.sed命令选项3.种调用sed的方式3.1 在命令行调用sed3.2 **==-e在一个命令行调用多个编辑器==**3.3 **==-f 在文件中调用编辑器==**3.4 s替换命令3.5脚本替换中的几个替换标记3.5 行寻址3.6 组合命令3.7 正则表达式3.8 删除行3.9 插入数据(i,a)3.10 替换命令(y)3.11 打印行 p3.12 sed和文件...原创 2020-02-17 21:57:01 · 240 阅读 · 0 评论 -
linux文本处理三剑客之 awk 命令
文章目录1. awk是什么2.awk的编程模型3.awk模式匹配3.1 第一种调用方式,将模式和动作写在terminal里面 后面接一个文件3.2 -f 第二种 将awk写在一个文件里3.3 以awk脚本的形式来执行awk命令4.记录和域5.关系和布尔运算5.1 ~匹配正则表达式6.表达式7.系统变量8.格式化输出9.内置字符串函数(1)gsub函数(2)index(1)length10 练习1...原创 2020-02-17 22:55:04 · 190 阅读 · 1 评论 -
Linux之shell---安全校验md5
文章目录shell—安全校验md51.md5sum命令2.举例理解2.1 获得md5值2.2 多个文件同时获得md5值3.md5sum命令的重要参数shell—安全校验md51.md5sum命令MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的“指纹”(或称“报文摘要...原创 2020-02-17 23:09:04 · 571 阅读 · 0 评论 -
linux系统产生随机数
linux系统产生随机数1.通过系统环境变量($RANDOM)实现echo $RANDOM注意:RANDOM随机数范围为0~32767,因此,它的加密性不是很好解决方法:通过再输出随机数后增加加密字符串,再一起执行md5sum操作并截取结果的后n位echo "mjym-haha$RANDOM"echo "mjy-haha$RANDOM" | md5sumecho "mjy-hah...原创 2020-02-17 23:13:26 · 222 阅读 · 0 评论 -
Linux之shell脚本随机数练习
练习1使用for循环在/westos目录下批量创建10个html文件,其中每个文件需要包含10个随机小写字母加固定字符串westos#!/bin/bashpath=/westos[ -d "$path" ] || mkdir -p $pathfor n in `seq 10`do random=$(openssl rand -base64 40|sed 's/[^a-z]//g'|c...原创 2020-02-17 23:23:58 · 182 阅读 · 0 评论 -
Linux之shell---系统文件加密
文章目录shell—系统文件加密1.建立初始指纹库和文件库step1 建立测试数据:step2 建立初始的文件指纹库:step3 建立初始文件库:2.监测文件内容和文件数量的变化step1 监测文件内容的变化:step2:监测文件数量的变化:3.开发脚本shell—系统文件加密监控web站点目录下的所有文件是否被恶意篡改(文件内容被更改)1.建立初始指纹库和文件库在企业网站发布代码之后,即...原创 2020-02-17 23:36:48 · 114 阅读 · 0 评论 -
shell---服务监控
监测mysql数据库异常文章目录一、端口监控1.服务器本地监控端口2.在远程服务器监控本地端口二、对服务进程或进程数进行监控三.开发监控mysql数据库的脚本四、httpd的监控脚本一、端口监控1.服务器本地监控端口在服务器本地监控端口的命令有:netstat ss lsof(1)netstat:netstat -antlpe | grep mysqlnetstat -antlp...原创 2020-02-21 22:22:55 · 114 阅读 · 0 评论 -
shell之服务启动脚本的编写(以ngix和rsycn为例)
文章目录一、ngix的服务启动脚本的编写1.安装nginx2.启动和关闭nginx3.服务启动脚本的编写4.测试:二、rsync的启动脚本一、ngix的服务启动脚本的编写1.安装nginx首先在官网获得nginx的安装包tar zxf nginx-1.16.1.tar.gzcd nginx-1.16.1/yum install gcc zlib zlib-devel openssl-d...原创 2020-02-21 22:28:27 · 114 阅读 · 0 评论 -
用shell脚本监控实现文件安全性的保证
题目解答第一步:建立基础指纹库和文件库,以助于后续进行入侵检测 mkdir /var/html/www -p cp -a /etc/a* /var/html/www/ cp -a /etc/b* /var/html/www/ ls /var/html/www/abrt alsa at.deny avahi bluetoot...原创 2020-02-21 22:36:46 · 119 阅读 · 0 评论