1.---------->>sed命令用来取指定范围行。

2.--------------->>>>“$?“返回值的用法

(1)判断命令、脚本或函数等程序是否执行成功。

(2)若在脚本中调用"exit 数字",则会返回这个数字给"$?"变量。

(3)如果实在函数里,则通过"return 数字"把这个数字以函数返回值的形式传给"$?"

3.---------------->>>>>>>echo 命令的使用

echo的常用参数:

-n  不换行输出内容

-e  解析转义字符

转义字符:

\r  不换行输出内容

\n  回车符

\t  制表符(tab)== 4个空格

\b  退格

\v  纵向制表符

举例------------------------->>>>

-n  不换行输出

-e 解析转义字符

11和22之间的空格是 \t 的作用,制表符

遇到 \n 重新开始一行

-b 退格

printf 和 echo的作用相差不多,遇到转义字符自动转义,末尾 \n 进行换行操作。

4.----------------------------------------------------->>>>>exec和shift的用法:

(1)exec命令能够在不创建新的子进程的前提下,转去执行指定的命令,当指定的命令执行完毕后,该进程(也就是最初的Shell)就终止了

(2)shift主要作用是将位置参数$1、$2等进行左移,即如果位置参数是$3、$2、$1,那么执行一次shift后,$3就变成了$2,$2就变成了$1,$1就消失了。

5.----------------------------------->>>>>>>>Shell打印变量长度的方法:

(1)通过在变量名前加#,打印变量值的长度;

linux变量中的字符加起来正好是12

(2)输出变量值,然后通过管道交给wc计算长度。

(3)利用好exor的length函数计算变量长度

(4)利用awk的length函数计算变量长度

6.------------------------------------------------->>>>>>>对变量的操作:

(1)截取linux变量的内容,从第2个字符之后开始截取,默认截取后面字符的全部。

空格也是字符,打印从第二个字符即空格后的内容。

(2)截取linux变量的内容,从第2个字符之后开始截取,截取2个字符。

(3)从变量开头删除最短匹配 “a*C”和“a*c”的子串

从开头开始删除最短匹配“a*C”的子串

再次从开头开始删除“a*c”的子串

(4)从变量开头删除最长匹配 “a*C”和“a*c”的子串

删除了最长匹配的“a*C”,重新定义abc变量在进行“a*c”操作。

将最长匹配的“a*c”都删除了,说明全部匹配了。

(5)Shell变量子串总结:

  #和##表示从开头匹配,从开头的第一个开始匹配。

  %和%%表示从结尾匹配,从结尾的最后一个开始匹配。

#  表示从开头删除匹配最短

##   表示从开头删除匹配最长

%  表示从结尾删除匹配最短

%%    表示从结尾删除匹配最长

6.----------------------------------->>>>>>字符串替换

匹配第一个字符,将python替换linux

将匹配到的所有字符linux替换成python

总结:

一个 "/" 表示替换匹配的第一个字符串。

两个 "/" 表示替换匹配的所有字符串。

Shell总结2的更多相关文章

  1. Shell替换

    如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...

  2. Shell特殊变量

    $ 表示当前Shell进程的ID,即pid $echo $$ 运行结果 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数 ...

  3. shell变量

    定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...

  4. 第一个shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...

  5. shell简介

    Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...

  6. Shell碎碎念

    1. 字符串如何大小写转换 str="This is a Bash Shell script." 1> tr方式 newstr=`tr '[A-Z]' '[a-z]' < ...

  7. MongoDB学习笔记二—Shell操作

    数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...

  8. 使用C#给Linux写Shell脚本

    在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...

  9. Linux环境下shell和vim中乱码原因及消除办法

    shell和vim中乱码原因及消除办法 作者:Jack47 在Linux下开发,经常遇到乱码问题:shell或者vim中显示不了中文,或者能够显示,但不能输入中文.每次都是上网去搜,或者同事告诉我一些 ...

  10. 【说解】在shell中通过mkfifo创建命名管道来控制多个进程并发执行

    背景: 工作中有两个异地机房需要传数据,数据全名很规范,在某个目录下命名为统一的前缀加上编号.如/path/from/file.{1..100}.而机房间的专线对单个scp进程的传输速度是有限制的,比 ...

随机推荐

  1. 个人永久性免费-Excel催化剂功能第23波-非同一般地批量拆分工作表

    工作薄的合并,许多Excel插件已有提供,Excel催化剂也提供了最佳的解决方案,另外还有工作薄的拆分和工作表的拆分,同样也是各大插件必备功能. 至于工作薄拆分,那是伪需求,Excel催化剂永远只会带 ...

  2. Hyperledger Fabric 之 Channel ,创建channel链接几项注意点

    好长时间没有更新博客,网上也有很多fabric的部署资料,而且也都很不错,也比较全面.我就再想重复的工作暂时就不用做了,后面抽时间在做细化和分类:就将学习和工作中遇到和解决的问题经验,做一些分享. 而 ...

  3. C#3.0新增功能09 LINQ 标准查询运算符 04 运算

    连载目录    [已更新最新开发文章,点击查看详细] 本篇主要介绍标准查询运算符的常用运算功能. 01 对数据排序 排序操作基于一个或多个属性对序列的元素进行排序. 第一个排序条件对元素执行主要排序. ...

  4. [剑指offer] 10. 旋转数组的最小数字

    题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 思路: 利用dp[i]保存盖2*i的矩形有多少种办法. 通过 ...

  5. 利用Github Pages创建的Jekyll模板个人博客添加阅读量统计功能

    目录 前言 准备工作 模板文件修改 写在最后 内容转载自我自己的博客 @(文章目录) 前言 Jekyll 是一个简单的免费的 Blog 生成工具,类似 WordPress .它只是一个生成静态网页的工 ...

  6. git commit规范化实践

    最近从svn转到git进行代码版本控制,今天了解了git commit规范化的一些知识后,写此文章记录下配置过程. 环境 编辑器使用的是vscode,项目框架是vue3.0 规范化工具 规范化git ...

  7. TP框架基础 (二) ---空控制器和空操作

    通过之前的学习我们知道了index.php是一个入口文件,如果没有这个入口文件的话,我们需要自己创建! [视图模板文件创建] 视图模板文件存放发位置在: 里面没有模板文件 如果我们想要访问Login控 ...

  8. TreeSet类的排序

    TreeSet支持两种排序方法:自然排序和定制排序.TreeSet默认采用自然排序. 1.自然排序 TreeSet会调用集合元素的compareTo(Object obj)方法来比较元素之间大小关系, ...

  9. 2019最新idea注册码

    2019最新注册码到2020年1月7号 N757JE0KCT-eyJsaWNlbnNlSWQiOiJONzU3SkUwS0NUIiwibGljZW5zZWVOYW1lIjoid3UgYW5qdW4iL ...

  10. centos7安装mongodb详解

    记录一下linux下安装mongodb数据库过程. 安装mongodb #下载linux版本的tar文件#  例如笔者下载的是:mongodb-linux-x86_64-rhel70-3.4.4.tg ...