博客
关于我
1-7:学习shell之透过shell看世界
阅读量:189 次
发布时间:2019-02-28

本文共 1245 字,大约阅读时间需要 4 分钟。

文章目录

一:扩展

其实每次你按下回车键时,bahs都会在执行命令前对文本进行多重的处理。举个简单的例子,*作为通配符的意思匹配任意多个字符,那么当命令行中有通配符*时,在执行命令之前,bash会把*进行扩展

echo命令用于显示文本,也就是将文本参数内容打印到标准输出,如下echo ls

在这里插入图片描述
那么echo *.txt,就会把当前目录下所有以.txt结尾的文件名显示出来

(1)路径名扩展

像刚才这种echo *.txt,使用通配符实现扩展的机制称为路径名扩展,这种功能非常灵活,可以配合通配符实现很多需求

比如找出当前目录下所有以大写字母开头的文件或文件夹
在这里插入图片描述
查看usr目录下,众多目录里含有share目录的路径
在这里插入图片描述

(2)波浪线扩展

其实这个大家也都知道,cd ~是回到用户目录,而echo ~是显示用户目录

在这里插入图片描述

(3)算数扩展

shell可以当作计算器使用。使用算数扩展要尊崇这样的格式:$((expression))

在这里插入图片描述
算数扩展支持的算数运算符如下
在这里插入图片描述
这里算数扩展仅了解,更多要在后续介绍

(4)花括号扩展

用过花括号扩展的人不得不说它的强大

使用花括号扩展时,花括号内的以逗号分隔的字符会进行分别处理
比如说我要一次性创建5个文件夹分别为test_1_testtest_3_testtest_5_testtest_7_testtest_9_test,一个一个创建太过麻烦,所以可以使用花括号扩展
在这里插入图片描述
还有更神奇的用法,如果花括号中左右两边中间是..,那么他就会按照左右两边的规律进行处理
比如说创建26个文件夹,文件夹名字分别是26个大写字母
在这里插入图片描述
还比如生成1-10000的一万个数,则可写作echo {1..10000} > test.txt
在这里插入图片描述

(5)参数扩展

其实参数扩展,我在另外一篇文章中就讲到过了,就是如何显示环境变量,使用到的就是ech $PATH

在这里插入图片描述

二:引用

第一部分我们讲了,$命令作为扩展的关键字,对命令进行扩展,但是有时会产生一些问题,比如说下图我的目的是在屏幕上显示 I have $5.00,但是$遇见了5,于是开始了参数扩展,但是没有这样类型的环境变量,所以它被替换为了空字符串,于是输出了I have .00

在这里插入图片描述
所以为了解决这样的问题,shell提供了引用

(1)双引号

双引号是第一种引用,主要用来处理空格问题,只要文本在双引号之中,Linux中除了$,/外,其余特殊符号将失去意义,也就是说除了参数扩展,算数扩展外其他扩展将失效。

空格在命令行中具有很特殊的意义,空格空开的两个字符很可能被当做为两个参数。如果必须要创建一个名字叫做Hello World.txt的文件夹,要是按照之前的方式创建,就会创建出两个文件夹

在这里插入图片描述
如果把文件夹名字放在双引号之内,将会忽略掉空格
在这里插入图片描述
但是注意双引号对参数扩展和算数扩展无效
在这里插入图片描述

(2)单引号

如果要使得所有扩展都不生效,那么就是用单引号

在这里插入图片描述

(3)转义字符

我相信在这里,转义字符就不需要我多说了吧,能看这种类型文章人,还会不知道转义字符的作用吗

在这里插入图片描述

转载地址:http://ecsi.baihongyu.com/

你可能感兴趣的文章
nacos源码 nacos注册中心1.4.x 源码 nacos源码如何下载 nacos 客户端源码下载地址 nacos discovery下载地址(一)
查看>>
nacos源码 nacos注册中心1.4.x 源码 spring cloud alibaba 的discovery做了什么 nacos客户端是如何启动的(二)
查看>>
nacos源码 nacos注册中心1.4.x 源码 如何注册服务 发送请求,nacos clinet客户端心跳 nacos 注册中心客户端如何发送的心跳 (三)
查看>>
Nacos源码分析:心跳机制、健康检查、服务发现、AP集群
查看>>
nacos看这一篇文章就够了
查看>>
Nacos简介、下载与配置持久化到Mysql
查看>>
Nacos简介和控制台服务安装
查看>>
Nacos管理界面详细介绍
查看>>
Nacos编译报错NacosException: endpoint is blank
查看>>
nacos自动刷新配置
查看>>
nacos运行报错问题之一
查看>>
Nacos部署中的一些常见问题汇总
查看>>
NACOS部署,微服务框架之NACOS-单机、集群方式部署
查看>>
Nacos配置Mysql数据库
查看>>
Nacos配置中心中配置文件的创建、微服务读取nacos配置中心
查看>>
Nacos配置中心集群原理及源码分析
查看>>
nacos配置在代码中如何引用
查看>>
nacos配置新增不成功
查看>>
nacos配置自动刷新源码解析
查看>>
nacos集成分布式事务插件Seata的序列化问题,实际上是Seata本身存在bug!!
查看>>