Shell总结2
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的更多相关文章
- Shell替换
如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...
- Shell特殊变量
$ 表示当前Shell进程的ID,即pid $echo $$ 运行结果 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数 ...
- shell变量
定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...
- 第一个shell脚本
打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...
- shell简介
Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...
- Shell碎碎念
1. 字符串如何大小写转换 str="This is a Bash Shell script." 1> tr方式 newstr=`tr '[A-Z]' '[a-z]' < ...
- MongoDB学习笔记二—Shell操作
数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...
- 使用C#给Linux写Shell脚本
在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...
- Linux环境下shell和vim中乱码原因及消除办法
shell和vim中乱码原因及消除办法 作者:Jack47 在Linux下开发,经常遇到乱码问题:shell或者vim中显示不了中文,或者能够显示,但不能输入中文.每次都是上网去搜,或者同事告诉我一些 ...
- 【说解】在shell中通过mkfifo创建命名管道来控制多个进程并发执行
背景: 工作中有两个异地机房需要传数据,数据全名很规范,在某个目录下命名为统一的前缀加上编号.如/path/from/file.{1..100}.而机房间的专线对单个scp进程的传输速度是有限制的,比 ...
随机推荐
- JAVA面试题 线程的生命周期包括哪几个阶段?
面试官:您知道线程的生命周期包括哪几个阶段? 应聘者: 线程的生命周期包含5个阶段,包括:新建.就绪.运行.阻塞.销毁. 新建:就是刚使用new方法,new出来的线程: 就绪:就是调用的线程的star ...
- c语言进阶13-线性表之顺序表
一. ACM算法:顺序表的查找 顺序表的查找指获取顺序表的第i个元素.对于线性表的顺序存储结构来说,如果我们要实现获取元素的操作(GetElem),即将线性表L中的第i个位置元素值返回.就程序而言,只 ...
- 浅入深出Vue:代码整洁之去重
在开始本篇的主题之前,让我们把上次遗留下来的问题都清理一下: 将其他组件中 axios 请求的地方封装起来. 这里就不把代码放在开头了,相关代码都放在文末,有兴趣了解的童鞋可以先往下翻. 好了, 我们 ...
- C#中Thread.IsBackground 属性
Thread thread.IsBackground =true; //Gets or sets a value indicating whether or not a thread is a ba ...
- 性能测试-loadrunner参数化
工具:loadrunner11 ie8 场景:不同用户的登录 1.参数化功能: 让脚本使用批量的变化的数据测试,实现模拟不同数据/用户的行为 函数格式:返回值类型 函数名称(参数类型 参数,参数类型 ...
- TP框架基础(一)
[使用框架] 官网:thinkphp.cn. 目前建议使用thinkPHP3.2版本 一.结构目录>Thinkphp文件夹,是thinkPHP的核心文件,里面的内容是不允许我们修改的 > ...
- 解决 document.getElementsByClassName 在 IE8 下的兼容下的问题
H5中新增了一个令人期待已久的方法:getElementsByClassName,这个方法让我们可以通过 class 属性中的类名来访问元素,这是极好的. but! 这个方法在IE9以下的浏览器是不支 ...
- java基础知识必备(一)
一,开发前奏 a.Java语言的发展历史. Java语言是美国Sun公司(Stanford University Network/斯坦福大学网络公司), 在199 ...
- [机器学习] kears入门:用单层网络实现玩具回归
learn from: 莫烦教keras的视频: https://morvanzhou.github.io/tutorials/machine-learning/keras/2-1-regressor ...
- Core CLR 自定义的Host官方推荐的一种形式(第一种)
.Net Core CLR提供两种Host API访问 托管代码的形式,按照微软官方的说法,一种是通过CoreClr.DLL来直接调用托管生成的DLL程序集,另外一种是通过CoreClr里面的C导出函 ...